QT 版本号识别 不同系统区分
版本号的识别
获取使用QT的版本号
1、$$[QT_VERSION]
在Qt 工程中的pro文件中可以使用message 打印出当前使用qt的版本如
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
message(Qt Version = $$[QT_VERSION] )
在概要信息的调试窗口会出现使用Qt的版本
qt版本号的比较
判断使用的版本是否大于某一版本使用greaterThan命令
如 :
greaterThan(QT_MAJOR_VERSION, 4): QT+=widget
表示使用的QT 主版本大于QT4
判断使用的版本小于某版本使用 lessThan 命令
如
lessThan(QT_MAJOR_VERSION, 4): xxx
表示QT的版本小于Qt4
qt 版本小版本的区别
QT_VERSION = $$[QT_VERSION]
QT_VERSION = $$split(QT_VERSION, ".")
QT_VER_MAJ = $$member(QT_VERSION, 0)
QT_VER_MIN = $$member(QT_VERSION, 1)
QT_VER_LIT= $$member(QT_VERSION, 1)
lessThan(QT_VER_MAJ, 5) | lessThan(QT_VER_MIN, 9) {
message(Qt版本小于5.9)
}
else{
message(Qt版本大于或等于5.9)
}
运行构建 在Qt的概要信息中有以下信息输出
同理 若果是判断相等使用
equals(QT_VER_MAJ ,5) | equals(QT_VER_MIN ,x)
不同系统使用区分
Qt 在语法上可以进行区分的操作系统为windows、Unix和Mac三类操作系统,分别对应的宏标识为win32, unix, macx。
win32{
LIBS +=-L$$PWD -lxxxxx
}else{
LIBS +=-L./ -lxxxxxx
}
在编写的文件中如何获取不同的版本文件:
QString wstrFilePath;
#if defined(Q_OS_LINUX)
//xxxxx 相关语句
#else
// xxxxx 相关语句
#endif