vs2015静态编译Qt5.7.1及使用

1.在Qt官网下载Qt的源码:http://download.qt.io/

2.下载并安装Python;

3.下载并安装Perl;

注意:① 安装Python,Perl 时要注意勾选添加环境变量到系统。

           ② 检测三个环境是否安装好,打开cmd窗口:

                Python的检测:Python

                Perl的检测:Perl -v

1.准备工作:
msvc版本:
           修改源码中 \qtbase\mkspecs\common\msvc-desktop.conf 文件,
           QMAKE_CFLAGS_RELEASE    = -O2 -MD
           QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi
           QMAKE_CFLAGS_DEBUG      = -Zi -MDd
           改为:
           QMAKE_CFLAGS_RELEASE    = -O2 -M T
           QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -M T -Zi
           QMAKE_CFLAGS_DEBUG      = -Zi -M Td

打开VS自带的命令提示窗口:


注:如果是编译x64的Qt,则需要打开VS2015 x64 本机工具命令提示符


打开命令提示符后,通过cd命令进入qt源码目录:cd C:\Qt5.7.1_src;

注:如果源码不在系统盘,则需要先用“盘符:”命令进入所在分区,如"D:"、"cd D:\Qt5.7.1_src"就进入了D盘的源码目录。

2.开始编译:

configure -confirm-license -opensource -debug-and-release -static -force-debug-info -prefix "D:\msvc2015_static" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples

注:-prefix后跟的是编译完成后的安装目录,替换成自己的目录即可。

执行nmake命令(注:大约编译4个小时)

编译完成后,没错误则执行nmake install命令(注:大约执行40分钟)

执行完成后没有报错说明安装成功,D:\msvc2015_static文件夹中即为最终的qt库

3.配置Qt库:

①qt.conf文件指明qt库目录的前缀、文档目录和示例目录,如果将安装目录挪到别处则需要修改或新建。在bin文件夹下新建qt.conf文件,并输入以下内容:

[Paths]  
Documentation=C:/Qt/Qt5.7.1/Docs/Qt-5.7  
Examples=C:/Qt/Qt5.7.1/Examples/Qt-5.7  
Prefix=D:/msvc2015_static
注:① 文档和示例目录此处使用了官方的msvc2015动态编译版安装包中的目录,也可以删掉这两项。Prefix是存放Qt库的目录。
②复制动态库中的bin/qmlscene.exe到静态库的bin文件夹中。否则在Qt Creator中添加Qt库时会报qmlscene未安装的错误。

③此步是Qt 5.7.1的msvc版需要执行的步骤:从源码目录中复制pdb文件到安装目录的lib文件夹。将下面文本复制到批处理文件(*.bat)中,然后放在lib文件夹中执行:

for /r C:\qt_5.7.1_src %%a in (*.pdb) do if /i "%%~xa"==".pdb" copy "%%~a"  
  
pause

注:如果不执行此步,编译时会有“未找到PDB文件”的警告,且调试时无法跟踪到Qt的源码。


④从动态链接版的Qt库的bin文件夹中复制Qt5Core.dll到静态链接版的lib文件夹中。

注:如果不执行此步,在Creator的Qt Version中将会显示“x86-windows-unknown-pe-32bit”。

4.配置Qt Creator:

①添加Qt Versions:


②新建一个构建套件,Qt版本选择刚添加的静态版,其他选项与动态版相同即可。





参考教程

Qt 5.7.1/5.8.0/5.9.0 在 msvc2015/mingw32 方式下的静态编译过程

Qt-学习笔记(1):vs2015使用qt静态库5.7

Qt:Qt 5.* &vs2015 编译静态库版本

Qt静态库的下载和安装配置

Qt Creator提示"Qt没有被正确安装,请运行make install"的解决办法

猜你喜欢

转载自blog.csdn.net/graceland525/article/details/76684675