15

Qt Creator は、Qt プロジェクト ファイルから参照できるビルド ディレクトリを含む qmake 変数を設定しますか?

Qt Creator のデフォルトのビルド ディレクトリ:

../build-%{CurrentProject:Name}-%{CurrentKit:FileSystemName}-%{CurrentBuild:Name}

私の目標は、QMAKE_POST_LINK を使用してビルド出力から dll のインポート ライブラリをコピーし、クライアント プロジェクトとのリンクを容易にすることです。インポート ライブラリのパスをハード コードすると、QMAKE_POST_LINK が機能します。

例えば:

QMAKE_POST_LINK = コピー C:\projects\ICP\sw\icpts\sandbox\configurable-system-test-io\build-lib-configurable-system-test-io-Desktop_Qt_5_1_0_MSVC2012_32bit_eb09a8-Debug\debug\*.lib ..\my-ライブラリ

解決策: $$OUT_DIR を使用するために fbucek によって提供された解決策は、私の問題を解決しました。ありがとう!

  • Windows では、QMAKE_POST_LINK で $$shell_path($$OUT_PWD) を使用して、Unix の「/」パス文字を Windows の「\」パス文字に変換する必要があります。
  • 複数のコマンドを QMAKE_POST_LINK に追加するには、$$escape_expand(\n) を追加して $$quote() で囲みます。

複数の QMAKE_POST_LINK コマンドの例:

QMAKE_POST_LINK += $$quote(copy /Y $$shell_path($$OUT_PWD)\debug\*.dll ..\lib$$escape_expand(\\n))
QMAKE_POST_LINK += $$quote(copy /Y $$shell_path($$OUT_PWD)\debug\*.lib ..\lib$$escape_expand(\\n))
QMAKE_POST_LINK += $$quote(copy /Y $$shell_path($$OUT_PWD)\debug\*.pdb ..\lib$$escape_expand(\\n))

$$OUT_PWD をありがとうございます。

-エド

  • Qt クリエーター 2.7.2
  • Qt 5.1
  • マイクロソフト対 2012
  • ウィンドウズ7
4

1 に答える 1