qmakeは:どのように私は、出力ディレクトリに.dllファイル/ .soの年代をコピーするのですか?
質問
私は、DLL /共有ライブラリとライブラリをテストする別のQtのプロジェクトをビルドするQtのプロジェクトを持っています。
テストプロジェクトの出力フォルダにDLLをコピーqmakeに持っている何か良い方法はありますか?
解決
あなたのプロファイルにこれを追加します。
target.path = ../testProject/$$TARGET
INSTALLS += target
他のヒント
# Copy the dynamic library.
win32 {
QMAKE_PRE_LINK=copy /Y lib\qextserialport\src\build\qextserialportd.dll debug\ & copy /Y lib\qextserialport\src\build\qextserialport.dll release\
}
else {
# TODO: Unices
}
このはQextSerialPortライブラリのために、動作します。 Qtのdebug_and_release
モードをサポートしています。
QMAKE_POST_LINK
も動作しますが、すぐにアプリケーションを実行しようとしている場合は、エラーがスローされます。その後、あなたの.dllが遅すぎるコピーされます。 QMAKE_PRE_LINK
は時間内にそれをコピーします。
私はそうのように、インストールを使用しています。(qmakeのドキュメント)
これは「良い」の方法ではないかもしれないが、それはトリックを行うことがあります。
QMAKE_POST_LINK += some shell command to copy the dll
それは qmakeのファイルに言われているように、
あなたはDESTDIR
キーワードを使用することができますQtの4に
所属していません StackOverflow