Windows7 如何发布Qt可执行程序

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yaoshenjie/article/details/73790370

Windows7 如何发布Qt可执行程序


近期学习Qt,并使用Qt编写一个小型参数解析工具,但是,我将可执行程序拷到一个没有安装Qt环境的电脑上,运行失败,报缺少库文件。于是我想到是不是和C++程序一样,需要静态编译,将库文件编译到exe文件中。结果虽然和我想的一样,但是,Qt静态编译很麻烦。

网上说,Qt发布可以采用两种方式:

1.静态编译,生成单一的可执行文件

2.动态编译,同时附上需要的dll文件

由于,静态编译比较复杂,目前还没有掌握,所以下面我使用的是附带Dll文件的发布。


具体操作如下:

1.将项目编译成Release版本。

2.附加需要的DLL文件

windows下安装了Qt Creator,默认安装了windeployqt工具,下面将是使用该工具自动生成exe需要的dll文件等。

2.1.首先,将Release下的可执行文件拷到一个文件夹中,并将需要的资源文件等一同拷到文件夹中。

2.2 

找到上图中的工具,然后,点击进入,切换目录到2.1中新建的文件夹中,并执行windeployqt + XXX.exe (例如我这是windeployqt aaa.exe),

2.3 上步后会在新建文件夹中生成需要的dll等文件。将该文件夹打包放到没有Qt环境的电脑上即可使用。


将上面文件夹放到另一电脑本想没有问题,但是还是报缺少msvcp120d.dll 和msvcr120d.dll文件,网上查找,是我电脑编译出来的是64bit程序,另一电脑上没有64bit的该dll文件,于是将我本地电脑上该文件拷到这台电脑的对应文件夹中(C:\Windows\System32),网上说该文件夹下放的是64bit的,而C:\Windows\SysWOW64下方的是32bit的,由于我按照这种方法,成功跑起程序,我觉没有去研究为什么了。有知道的,交流一下,嘿嘿!


以上是我这次遇到的问题,写与此以备忘。网上说的静态编译的方法,希望有大神可以指点一下。O(∩_∩)O~

猜你喜欢

转载自blog.csdn.net/yaoshenjie/article/details/73790370