アプリでlibが見つからないという問題が発生しました。これは、qtプロジェクトの.proファイルの$$PWD
と.
の理解に関連している可能性があります。
したがって、$$PWD
と.
はどちらも意味します。proファイルを含むdir OR dir、つまりビルドプロセスによって生成されます(例:****-build-desktop-Qt_4_8_1_in_PATH__System__Debug)。または、それらは異なる意味を持ちます。
OBJECTS_DIR = obj/Obj
のようないくつかの変数宣言では、.
は生成されたdirを意味するように見えます。一方、HEADERS += remoteclient.h ./RealPlay/realplay.h \
では、.
は。proファイルを含むディレクトリを意味するように見えます。
LIBSやDESTDIRなどでの意味はどうですか?
$$PWD
は、現在のファイル(.proまたは.pri)があるディレクトリを意味します。
LIBS
でも同じ意味です。私は自分のプロジェクトで次のように使用しました。
LIBS += -L$$PWD/deps/Android -lopenal
.
は、.proファイルでは特別な意味はありません。これは、Linux/Unixシェルと同じ意味で、現在の作業ディレクトリです。 LIBS
で使用する場合、おそらくlinkコマンドが実行されているビルドディレクトリを参照します。 .
は展開されません。 -L.
と言うと、リンカーは文字通り-L.
を取得します。
HEADERS += remoteclient.h ./RealPlay/realplay.h \
の場合、qmakeはこれらのパスを$$PWD
に関連して処理するため、.
があるかどうかは関係ありません。この場合、HEADERS += $$PWD/remoteclient.h $$PWD/./RealPlay/realplay.h \
が効果的な検索パスになります。そうしないと、ソース外のビルドが機能しません。
パスの途中にある.
は何もしないことに注意してください。