我希望我的Qt应用程序能够运行,而不管Qt特定的DLL。为此,我应该静态链接可执行文件。然而,这需要一个静态的"安装Qt本身。
这就是我被困的地方。我浏览了几十个不同的教程页面,但它们与我的设置不兼容,写得不好或者只是错误。
这是我的情况:
同样,我的目标如下:使用QtCreator编译静态链接的exes,不需要运行Qt DLL。
有人可以推荐一个描述我应该采取的步骤的教程/维基页面吗?
答案 0 :(得分:0)
你需要的是Qt-Libs,它们可以静态链接,也不是DLL的存根。我在现场通过google发现了一些参考文献:
How to build a static Qt version for Windows with GCC
两者都在使用GCC,但也应该可以使用MSVC进行构建。
答案 1 :(得分:0)
我终于弄明白了,然而,这确实花了我一整天时间。
Qt 5.2.1在构建源代码时充满了错误(或者我在某处读过)。我有多个编译问题,其中大部分都可以在互联网上挖掘几分钟后修复(编辑各种标题文件,篡改宏),但编译时间为> 2小时在我的Compaq上尝试并希望它能起作用太多了。
幸运的是,某个地方我偶然发现了使用4.8.6的建议。好吧,我下载了那个版本,用win32-msvc2013
编译,添加到QtCreator,它运行正常。
注意:在编译4.8.6时,GCC可能会失败抱怨off64_t未定义。这似乎是一个与Qt无关的MinGW错误。此处描述了问题和解决方案:Static compilation of Qt 5 fails under mingw with reference to off64_t
我必须说,我真的不明白这种情况。 Qt是一个非常强大和流行的框架。能够开发独立的,独立的exes,不需要用户安装任何比Windows更多的东西是一个基本的要求,应该是一个孩子的游戏,但它是如此耗时和困难。
我之所以提出这个问题的原因是我找到的所有网页(以及此处建议作为答案)似乎都不适合我。