折腾了好几天总算把QT程序打包成功了
-
和MSVC不同,QT框架编译出来的程序默认是动态编译,直接运行会提示缺少dll。
当然这个很简单,把dll复制过去就能解决,而且qt为懒人提供了windeployqt
windeployqt ./helloQT.exe
一键复制dll到当前目录
但是,事情并没有那么简单!
此时双击exe运行,会提示无法定位程序输入点,于是我开始了真正的折腾之旅。首先是按照某些博客上的说法,把QT添加进环境变量,然后按照上述方法打包,结果依然报错。
之后,按照另一些博客上的说法,把QT的环境变量提前,以免其他目录中同名程序产生冲突,卸载多余版本的QT以免冲突,结果依然报错。最终,发现QT自带一个QT commandline...(自己写的helloworld就没必要上64位了,32位还能节省点空间)
然后我打开了QT命令行
cd /d [Project DIR]\release\ windeployqt .\helloQT.exe
然后就成功了...功了...了...
顺便吐槽下QT的库真多,一想到需要分发给那些电脑都不会用的白痴就觉得头疼,他们怕是连二进制文件都找不到