qmake平台范围

时间:2011-06-16 11:52:52

标签: operating-system qmake

为Win32,Mac和Linux开发了基于标准c ++ qmake的库。在qmake项目文件中,依赖于平台的源包括如下:

win32 {
     SOURCES += WinSystem.cpp
     HEADERS += WinSystem.h
 }

macx {
     SOURCES += MacSystem.cpp
     HEADERS += MacSystem.h
}

unix {
     SOURCES += LinuxSystem.cpp
     HEADERS += LinuxSystem.h
}

现在在OS X上定义了unixmacx,因此Linux文件也包含在内并导致错误!解决方案是什么?

1 个答案:

答案 0 :(得分:18)

你可以否定和组合块,所以在unix但不在mac中会是:

unix:!macx {
  SOURCES += LinuxSystem.cpp
  HEADERS += LinuxSystem.h
}