Qt项目配置相关总结

本文详细介绍了QT程序的命令行编译步骤,包括使用qmake生成Makefile,x86和x86_64架构判断,操作系统识别,以及release和debug模式设置。此外,还涉及了程序发布打包(windeployqt)和运行时控制台显示的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.QT程序命令行编译步骤

2.QMAKE_HOST变量显示当前编译环境

3.x86和x86_64判断

4.操作系统判断

5.release或者debug判断

6.qmake执行pro中的打印

7.QT程序程序发布打包

8. QT程序运行时显示控制台


1.QT程序命令行编译步骤

(1)生成pro文件,QT+=widgets是可选项
qmake -project QT+=widgets
(2)从pro文件生成Makefile
qmake <====> qmake -o Makefile hello.pro
(3)生成可执行程序
make

2.QMAKE_HOST变量显示当前编译环境

// 生成的程序可以运行在什么cpu架构下
message($$QMAKE_HOST.arch)
// 当前编译环境所在操作系统信息
message($$QMAKE_HOST.os)
message($$QMAKE_HOST.cpu_count)
message($$QMAKE_HOST.name)
message($$QMAKE_HOST.version)
message($$QMAKE_HOST.version_string)

3.x86和x86_64判断

contains(QMAKE_HOST.arch,  x86):{
}
或者
contains(QT_ARCH, x86) {
}

contains(QMAKE_HOST.arch,  x86_64):{
}
或者
contains(QT_ARCH, x86_64) {
}

4.操作系统判断

win32 {
}

unix:!macx {

}

macx {

}

5.release或者debug判断

CONFIG(debug, debug|release): {
    #可以增加编译开关
    DEFINES += MY_QT_DEBUG
}

CONFIG(release, debug|release): {
}

6.qmake执行pro中的打印

7.QT程序程序发布打包

(1)Widget程序打包
windeployqt <path-to-app-binary>  // path-to-app-binary表示需要打包的二进制文件
例如:
bin> C:\Qt\5.15.2\msvc2019\bin\windeployqt.exe D:\work\project_code\RelWithDebInfo\bin\tools.exe

(2)Qml程序打包
windeployqt --qmldir <path-to-app-qml-files> <path-to-app-binary>
说明:
    path-to-app-qml-files 指你的工程pro / cmake代码目录,
    path-to-app-binary 指打包的exe文件目录
bin> C:\Qt\5.15.2\msvc2019\bin\windeployqt.exe --qmldir D:\work\project_code\tools\src\app D:\work\project_code\RelWithDebInfo\bin\tools.exe

8. QT程序运行时显示控制台

(1)cmake工程
#DEBUG模式下运行时显示控制台窗口
SET_TARGET_PROPERTIES(test-x64 PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE")

#Release with Debug Infomation模式下运行时显示控制台窗口
SET_TARGET_PROPERTIES(test-x64 PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE")

(2)pro工程

CONFIG += console
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值