如何在命令行通过QMake选择Qt5/Qt6不同构建套件
命令行用qmake指定Qt5/Qt6套件编译的方法
核心思路是直接调用对应Qt版本的qmake可执行文件——不同Qt版本的qmake已经绑定了配套的编译器、链接器和调试器配置,不需要在.pro文件里额外指定这些工具链。
具体操作步骤:
定位对应Qt版本的qmake路径
- Windows示例:Qt5的qmake可能在
C:\Qt\5.15.2\msvc2019_64\bin\qmake.exe,Qt6的在C:\Qt\6.5.0\msvc2019_64\bin\qmake.exe - Linux示例:Qt5的qmake路径为
/opt/Qt5.15.2/gcc_64/bin/qmake,Qt6的为/opt/Qt6.5.0/gcc_64/bin/qmake - macOS示例:Qt5的qmake在
~/Qt/5.15.2/clang_64/bin/qmake,Qt6的路径类似
- Windows示例:Qt5的qmake可能在
命令行编译流程
- 先进入项目根目录:
cd /path/to/your/project - 清理旧构建文件(可选但推荐):
- Linux/macOS:
make clean - Windows MSVC:
nmake clean
- Linux/macOS:
- 调用对应版本qmake生成Makefile:
- 编译Qt5项目:
/path/to/qt5/qmake your_project.pro - 编译Qt6项目:
/path/to/qt6/qmake your_project.pro
- 编译Qt5项目:
- 执行编译:
- Linux/macOS:
make(要并行编译可加-j4这类参数) - Windows MSVC:
nmake
- Linux/macOS:
- 先进入项目根目录:
指定Debug/Release模式
如果需要编译特定模式,在qmake命令里加CONFIG参数:# Qt5 Debug模式 /path/to/qt5/qmake CONFIG+=debug your_project.pro # Qt6 Release模式 /path/to/qt6/qmake CONFIG+=release your_project.pro简化命令:临时切换环境变量
可以把对应Qt版本的bin目录加入系统PATH,这样直接输入qmake就会调用当前PATH优先级最高的版本:- Linux/macOS临时切换:
# 切换到Qt5 export PATH=/opt/Qt5.15.2/gcc_64/bin:$PATH qmake your_project.pro # 切换到Qt6 export PATH=/opt/Qt6.5.0/gcc_64/bin:$PATH qmake your_project.pro - Windows临时切换:
# 切换到Qt5 set PATH=C:\Qt\5.15.2\msvc2019_64\bin;%PATH% qmake your_project.pro # 切换到Qt6 set PATH=C:\Qt\6.5.0\msvc2019_64\bin;%PATH% qmake your_project.pro
- Linux/macOS临时切换:
内容的提问来源于stack exchange,提问作者TSG
相关产品推荐
相关产品推荐

