OS-Xでチャームのようにコンパイルして実行するアプリケーションを作成しました。それでは、Windowsで動作させたいと思います。まず、プロジェクトをWindowsマシンにコピーしてコンパイルしようとしましたが、次のエラーが発生しました。
::警告:Qmakeはソースディレクトリの下のビルドディレクトリをサポートしていません。
何か案は?
あるマシンから別のマシンに、またはあるディレクトリから別のディレクトリにプロジェクトをコピーする場合は、project.pro.userファイルをコピーしないでください。プロジェクトを開くと、QtCreatorは適切な場所に新しいビルドディレクトリを作成することを提案します。
シャドウビルドディレクトリを、プロジェクトディレクトリと同じレベルのフォルダに設定します。
folder/
project/
project-shadow-build-release/
project-shadow-build-debug/
これは、左側のツールバーの[プロジェクト]ビューで実行できます。私にとって、この警告は単なる煩わしさであり、それが原因でプロジェクトのビルドに失敗することはありませんでした。
Andrefはこの警告を解決するために正しい答えを出しましたが、この要件が存在する理由を理解したい場合があります。
実際、ビルドディレクトリ必須はプロジェクトと同じフォルダレベルにある必要があります(つまり、上または下に置くことはできません)。その理由は、リンカーがビルドディレクトリから呼び出されるためです。したがって、ライブラリファイルへの相対パスは、プロジェクトファイルに入力したものとは異なります。
それはちょっとひどいです。私はすべての中間ファイルをそれぞれのフォルダーに入れるのが好きです。しかし、qmakeでは単純にできません。
.pro.user
は、QtCreatorによって生成されたファイルです。それらはqmake
とは無関係であり、触れてはいけません(さらに、VCSに入れてはいけません)。
拡張子がpro.user
のファイルを削除するだけでうまくいきました
ビルド構成の編集:デバッグ/プロファイル/リリース/デフォルトのディレクトリを変更します[〜#〜]または[〜#〜]チェックを外すだけですシャドウビルドチェックボックス。
私もこれを手に入れ、Linuxで作成されたプロジェクトをコンパイルしようとしました。
これを解決する別の方法は、。pro.userファイル(プロジェクトのディレクトリ内)のパスを変更することです。