C ++,Qt - 如何摆脱dll依赖?

时间:2010-06-05 17:04:45

标签: c++ qt dll

我编译了我的Qt应用程序,现在有了以下问题 - 现在我的构建项目需要QtCore4.dllQtGui4.dll位于.exe文件所在的同一文件夹中。 (我使用带有Qt插件的MSVS2008构建了我的项目)

问:

有没有办法将我的最终应用程序与这些.dll文件合并,以便它们创建一个大.exe个文件? (我根本不想在我的发布版本中使用另一堆dll文件 - 应用程序)

谢谢。

3 个答案:

答案 0 :(得分:9)

您需要静态buildlink to Qt。

编辑:这是至少similar information的更新链接。

答案 1 :(得分:2)

将它们捆绑成一个自解压的.exe(例如使用7zip),它将所有文件提取到临时目录,运行程序,然后在程序退出后删除文件。

这比以前建议的静态链接Qt更容易,耗时更少,法律限制更少。

答案 2 :(得分:0)

当然,你可以静态链接。但是使用DLL的重点应该是使程序更小(在磁盘和内存中,如果其他应用程序当然使用Qt库)...那些DLL应该是系统范围的,以便其他需要它们的应用程序可以使用它们。基本上你必须对想要你的程序工作的人说,安装Qt框架。

解释部署另一种方式here,阅读与静态链接相关的部分。