<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[How to deploy Qt program that relies on a 3rd party library?]]></title><description><![CDATA[<p dir="auto">Hi there.  I've spent the last 4 hours (!!!) attempting to deploy a Qt (5.6) application I'm developing onto another machine.  It works perfectly on my machine (Windows 7 x64), but immediately and silently closes when launched on both of the other test machines I've tried (Win7 x64 and Win10 x64).</p>
<p dir="auto">I followed the instructions here:<br />
<a href="https://wiki.qt.io/Deploy_an_Application_on_Windows" target="_blank" rel="noopener noreferrer nofollow ugc">https://wiki.qt.io/Deploy_an_Application_on_Windows</a><br />
and after that failed I tried through windeployqt.</p>
<p dir="auto">Both methods led to an .exe that silently closed on launch.  No error messages complaining of missing DLLs or any other signs that could help diagnose the problem.<br />
On the target machines, I installed the Visual C++ 2013 runtime and libusbK (the external library).  The Qt DLLs (and plugins) were included in the .exe's folder.</p>
<p dir="auto">I finally created a dummy app that did not rely on any external libraries and attempted deploying that.  Everything worked perfectly.</p>
<p dir="auto">So, the question is, is there a special method I need to use to include external libraries when deploying on a remote system?  Or is it likely an issue specific to libusbK and I'd have better luck asking the people there?</p>
<p dir="auto">Thanks,<br />
~Chris</p>
]]></description><link>https://forum.qt.io/topic/66347/how-to-deploy-qt-program-that-relies-on-a-3rd-party-library</link><generator>RSS for Node</generator><lastBuildDate>Mon, 11 May 2026 11:19:46 GMT</lastBuildDate><atom:link href="https://forum.qt.io/topic/66347.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 23 Apr 2016 07:21:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to How to deploy Qt program that relies on a 3rd party library? on Mon, 25 Apr 2016 03:19:44 GMT]]></title><description><![CDATA[<p dir="auto">Ah, yes, the "temporary solutions" :)<br />
I'm glad you figured it out. Happy coding.</p>
]]></description><link>https://forum.qt.io/post/323973</link><guid isPermaLink="true">https://forum.qt.io/post/323973</guid><dc:creator><![CDATA[Chris Kawa]]></dc:creator><pubDate>Mon, 25 Apr 2016 03:19:44 GMT</pubDate></item><item><title><![CDATA[Reply to How to deploy Qt program that relies on a 3rd party library? on Mon, 25 Apr 2016 00:16:12 GMT]]></title><description><![CDATA[<p dir="auto">Thanks Chris.  I installed LibusbK using the official installer.  I believe it places the DLLs on the user's machine and then adds them to PATH.  But that wasn't the issue...</p>
<p dir="auto">I actually found the cause today after spending another few hours trying to chase down the "missing" DLLs.<br />
It had nothing to do with Qt or any 3rd party library, and everything to do with my own poor programming.<br />
Weeks back, I'd written some code that used an absolute path to open a text file, with the idea being that I'd change it to a relative path once all of the bugs related to parsing the file were ironed out.  Of course, I completely forgot that this code existed and just continued on with development.<br />
And when moving to the new machine that didn't have the exact file in the exact location, all hell broke loose.</p>
<p dir="auto">The joys of being a rookie engineer!</p>
]]></description><link>https://forum.qt.io/post/323968</link><guid isPermaLink="true">https://forum.qt.io/post/323968</guid><dc:creator><![CDATA[espocjo]]></dc:creator><pubDate>Mon, 25 Apr 2016 00:16:12 GMT</pubDate></item><item><title><![CDATA[Reply to How to deploy Qt program that relies on a 3rd party library? on Sat, 23 Apr 2016 07:49:55 GMT]]></title><description><![CDATA[<p dir="auto">Hi, welcome to the forum</p>
<p dir="auto">The usual way you deploy 3rd party libraries is by placing their dlls in your app folder, just like you do with Qt. If that's not the case then the other options are to place the dlls in a system folder like <code>Windows</code>, but that's a very uncool thing to do and IMHO only system components should do that. Yet another option is to put the path to the dlls in the PATH variable, but that's something I personally hate when apps do and I highly discourage it.<br />
The most civil way is to just put all your stuff in one place, next to the executable.</p>
<p dir="auto">You said you "installed" libusbK. What does that mean? Is there some kind of installer or did you just copy some dlls over?<br />
Some libraries  (like Qt) don't have a special runtime installer and they expect you to deploy them however you like. Some other just copy their files to some folder, set an environment variable or a registry key to point there and expect your app to look for them there and load dynamically. Yet others have an installer that sets up PATH or installs in Windows folder (like the C++ runtime).</p>
<p dir="auto">It's a question of how libusbK expects you to deploy it.<br />
Also, you might want to try to run <a href="http://www.dependencywalker.com/" target="_blank" rel="noopener noreferrer nofollow ugc">Dependency Walker</a> in the profile mode on the target machines to confirm that it's the libusbK  that is causing a problem or something else is missing.</p>
]]></description><link>https://forum.qt.io/post/323794</link><guid isPermaLink="true">https://forum.qt.io/post/323794</guid><dc:creator><![CDATA[Chris Kawa]]></dc:creator><pubDate>Sat, 23 Apr 2016 07:49:55 GMT</pubDate></item></channel></rss>