28

proQtCreator を介してファイルに Mac OS の構成を設定したいと思います。ドキュメントを読んだところ、次のように Windows と Unix をサポートしていることがわかりました。

 win32 {
     SOURCES += hellowin.cpp
 }
 unix {
     SOURCES += hellounix.cpp
 }

Mac OS が *nix のような OS であることは理解していますが、それでも Linux との違いを作りたいと思っています。これを行う方法はありますか?


Ubuntu + Qt5.1

4

2 に答える 2

40

次の方法で Mac OS X を検出できます。

macx {
    SOURCES += hellomac.cpp
}

しかし、Linuxとの違いを生むために、むしろ指定したい

unix:!macx {
    SOURCES += hellolinux.cpp
}

macx: {
    SOURCES += hellomac.cpp
}
于 2013-08-27T10:54:45.947 に答える
25

「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

特定のユースケースに基づいて必要になる可能性のあるバリアントを次に示します。

Mac (iOS サポートを含む)

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

于 2013-08-29T20:13:18.517 に答える