我在两台开发机器之间共享一个Qt代码库。一个是OSX 10.8.5,一个是OSX 10.9.5。
除非我包括:
,否则该项目不会在10.9.5上编译QMAKE_MAC_SDK = macosx10.9
因此我有两个.pro文件,一个有/没有那行。如何根据检测到的Mac OSX版本有条件地包含该行?。
答案 0 :(得分:2)
我最近在其上发现了一些info,它似乎是可行的(应用一次):
OS_VERSION = $$system(uname -r) # common to Unix
contains(OS_VERSION, VersionTag):SOURCES += example.c # can apply to different options
contains(OS_VERSION, VersionTag):QMAKE_MAC_SDK = macosx10.9 # like that?
回答Tay2510,由于某种原因,只有完整的字符串在Linux上工作:
OS_VERSION = $$system(uname -r)
message($$OS_VERSION)
contains( OS_VERSION, 3.13.0-39-generic ) {
message(Generic)
}
#Output:
Project MESSAGE: 3.13.0-39-generic
Project MESSAGE: Generic