qmake を使用してスタティック ライブラリをビルドするときに、リンカーにオプションを提供したいと考えています。MSVC でビルドするときに、詳細なリンカー出力を取得したいとします。プロジェクト ファイルは次のようになります。
# mylib.pro
TEMPLATE = lib
TARGET = mylib
CONFIG += staticlib
QT += core
win32-msvc*: QMAKE_LFLAGS += /VERBOSE
unix: QMAKE_LFLAGS += -v
それがプロジェクトファイル全体です。その結果、オブジェクトが含まれていない空の静的ライブラリが作成されます。
どちらQMAKE_LFLAGS
もQMAKE_LFLAGS_STATIC_LIB
ももを設定してもLIBS
、リンカーには影響しません。これらの変数に設定されたものは、Makefile にもなりません。機能する場合は、特定のプラットフォームに応じて、コマンド ラインでリンカを表示または渡すQMAKE_LFLAGS
ことを期待します。/VERBOSE
-v
どのメイクファイル ジェネレーターを使用しても問題ありません。この動作は一貫しているようです。関心のある 2 つのプラットフォームは次のとおりです。
qmake -spec win32-msvc2008
qmake -spec macx-llvm
qmake のクロスプラットフォームの性質により、たまたま Qt がインストールされている任意のプラットフォームでテストできます。これは、Qt 4.8.4 と 5.1.1 の両方から qmake で再現されます。mkspec で指定されている msvc のバージョンは関係ありません。