Ответ 1
Вы можете обнаружить Mac OS X следующим образом:
macx {
SOURCES += hellomac.cpp
}
Но чтобы иметь значение с Linux, вы бы хотели указать
unix:!macx {
SOURCES += hellolinux.cpp
}
macx: {
SOURCES += hellomac.cpp
}
Я хотел бы установить некоторые конфигурации для Mac OS в файле pro
через QtCreator. Я прочитал документ и нашел, что он поддерживает Windows и Unix, например,
win32 {
SOURCES += hellowin.cpp
}
unix {
SOURCES += hellounix.cpp
}
Я понимаю, что Mac OS - это * nix-подобная ОС, однако я все же хочу различать Linux. Есть ли способ сделать это?
Ubuntu + Qt5.1
Вы можете обнаружить Mac OS X следующим образом:
macx {
SOURCES += hellomac.cpp
}
Но чтобы иметь значение с Linux, вы бы хотели указать
unix:!macx {
SOURCES += hellolinux.cpp
}
macx: {
SOURCES += hellomac.cpp
}
'mac': он применяется как к Mac OS X, так и к iOS
'macx': он специфичен для Mac OS X.
Итак, если вы хотите позже включить поддержку iOS или просто быть гибким (а почему бы и нет?), вам лучше использовать "mac". Иначе идем к последнему. Поэтому вам понадобится любой из них.
Здесь вы можете найти официальную документацию:
http://qt-project.org/doc/qt-5.1/qmake/qmake-language.html#platform-scope-values
Вот варианты, которые могут вам понадобиться на основе вашего конкретного варианта использования.
win32 {
SOURCES += hellolinux.cpp
} mac {
SOURCES += hellomac.cpp
}
win32 {
SOURCES += hellolinux.cpp
} macx {
SOURCES += hellomacx.cpp
}
Здесь вы можете найти исходный код для поиска дополнительной информации о недокументированных областях:
http://qt.gitorious.org/qt/qtbase/source/730bc064a070e886e10950ccfd59780e8976f5fd:mkspecs