windows下编译打包发布Qt时,如何一次性把所需的dll库拷贝出来

本文资料及图片来源:https://blog.csdn.net/liuyez123/article/details/50462637         

                      


将编译后的release版本的exe放到任何一个路径,在该路径打开命令行,在命令行中输入:windeployqt  xxx.exe     (xxx为程序的名字)。 

所需的dll将会自动从qt中拷贝到与xxx.exe相同的路径下。

如下图所示:


Tips:如何在一个特定的路径下打开命令行?

    请访问:如何在任意路径打开cmd命令行


更新:

如果按照上面的操作打包后拷贝给别人仍然没法运行,比如点击exe运行时提示:This application failed to start because no qt platform plugin could be initialized ...或者提示:应用程序无法正常启动0x00007b,请单击确定关闭应用程序),那么尝试着这样做:

 1. 将你的qt安装目录下的plugins下的platforms和imageformats文件夹也拷贝到exe的同级目录。有人说把plugins目录整个拷贝到exe的同级目录,经测试这样是不可以的。

 2. 将qt安装目录的下的msvc2013_opengl文件夹(或者msvcc2017xxx或者msvc2013xxxx文件夹,总之是与你正在使用的qt版本匹配的一个msvc文件夹,你可能安装了多个qt,则msvc文件夹有多个,要选你用的那个)下的所有的dll文件拷贝到exe的同级目录下(在文件搜索框中搜索dll,将显示所有的dll,全选之)即可。当然,严格来说肯定不是要把所有的dll都拷贝,只需要拷贝一些需要的就可以了,但是由于我目前还不知道那些是有用的那些是没用的,所以只能全部拷贝.

猜你喜欢

转载自blog.csdn.net/Johnisjohn/article/details/86690312
今日推荐