【嵌入式——QT】QT静态编译
- QT下载
- 查看文档
- 下载Visual Studio
- 打开命令行模式
- 编译
- 添加QT到Qt Creator
- 编译示例
QT下载
下载地址
进入目录,我这里选择的qt-everywhere-src-5.14.1.zip。
查看文档
解压压缩包打开源码,查看README文件,里面有windows的要求。
我们要选择一个编译环境 MinGW 和 MSVC,这两个环境是不兼容的,要看一下你当前支持的编译器是什么。
下载Visual Studio
我们下载自己所需要的Visual Studio来作为编译器,我这里选择的版本是2019版本,同时也是QT所支持的版本。
Visual Studio下载地址
按照步骤安装即可,选择社区版。
打开命令行模式
打开安装Visual Studio自带的 x86 Native Tools Command Prompt for VS 2019 或者 x64 Native Tools Command Prompt for VS 2019 看个人需求。我这里选择的是x86的。如果不知道怎么查找的话,可以直接按win按键,搜索native就会给你提示出来两个版本的工具。
编译
进入刚刚解压好的QT源码目录,D:\Qt\qt-everywhere-src-5.14.1\qtbase\mkspecs\common
打开msvc-desktop.conf文件,修改==-MD为-MT==。
修改前
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -Zi -MD
QMAKE_CFLAGS_DEBUG = -Zi -MDd
修改后
QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_OPTIMIZE -MT
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -Zi -MT
QMAKE_CFLAGS_DEBUG = -Zi -MTd
提示:D的意思是动态编译(dynamic link),T的意思是静态编译(static link);
配置configure命令
configure.bat -static -prefix "D:\Qt\test" -confirm-license -opensource -debug-and-release -platform win32-msvc -nomake examples -nomake tests -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -mp
具体参数含义:
- -prefix “D:\Qt\test” #指明安装的目录
- -confirm-license -opensource #指明是开源版本的qt
- -debug-and-release #指明需要debug版和release版,可以单独选择release版
- -platform win32-msvc #指明使用msvc编译,这里的win32并不指32位
- -nomake examples -nomake tests #不编译样例
- -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg #可选插件
- -opengl desktop #用系统自带的opengl
- -mp #多核编译
在我们上面打开的x86 Native Tools Command Prompt for VS 2019窗口中进入到QT解压后所在的目录,执行configure命令。
我们这里使用的环境是MSVC,所以使用nmake命令进行编译即可,上图中也提示你了,Just run nmake。
我的电脑配置一般,执行了大概4个小时。特别占用CPU,建议在电脑闲时来操作。
执行完之后,我们再来执行最后一条命令 nmake install。
这个QT文件夹大概3.4G。
打开安装完成的qt目录,进入bin修改qt.conf文件
D:\Qt\Qt5.14.1\msvc2019_32\bin
QMAKE_MSC_VER = 1900
[Paths]
Prefix=D:/Qt/Qt5.14.1/msvc2019_32
添加QT到Qt Creator
QT Creator下载地址
打开Qt Creator -》项目-》管理构建套件-》Qt版本 ,如果 Visual Studio安装正确,Qt Creator安装的时候需要选择支持MSVC2019,这个QT版本里会自动检测到MSVC2019版本的。
然后我们选择构建套件页签,添加一个构建套件
Qt版本选择上面你的qt版本。这个qt版本是你 Creator需要支持的才可以。
综上所述就可以开始写qt程序的,然后使用这个编译器来进行静态的编译吧。
编译示例
QT Creator编辑栏中的左下角可以看到以下按钮,选择你想要编译的模式,Debug、Profile、Release。第一个绿色按钮是直接运行,第二个绿色的按钮是debug模式运行。