4

qt4プロジェクトをあるコンピューターから新しくインストールした別のコンピューターに持ち込もうとしていqt5ますが、非常に奇妙な問題が発生しています。

qmake がソース ファイルまたはヘッダー ファイルを突然見つけられなくなりました。

最小限の例を次に示します。

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = untitled
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp

INCLUDEPATH += $$PWD/Dir/
DEPENDPATH += $$PWD/Dir/

HEADERS  += mainwindow.h \
    f.h \

FORMS    += mainwindow.ui

Dir/f.hと同じディレクトリに存在する場所untitled.pro。そして、qmake から次の出力を取得します。

05:18:45: Starting: "/opt/QtSDK/5.0.2/gcc/bin/qmake" 
/home/martin/Projects/untitled/untitled.pro 
-r -spec linux-g++ CONFIG+=debug CONFIG+=declarative_debug CONFIG+=qml_debug
WARNING: Failure to find: f.h
05:18:45: The process "/opt/QtSDK/5.0.2/gcc/bin/qmake" exited normally.

何が原因なのかまったくわかりません。何が問題なのですか?

編集:

次のように手動で名前を追加すると:

HEADERS += Dir/f.h \

qmake文句を言いません。

4

2 に答える 2

4

PWD を定義したことがありません。二重ドル記号 '$$' プレフィックスは、pro ファイルで以前に定義された qmake 変数を示します。あなたの場合、その$$PWD部分は完全に不要です。完全に削除すると、すべてが正常にコンパイルされるはずです。

編集:さらに、彼らは Qt 5 で静かに動作を変更DEPENDPATHしました。Qt 5 の時点で、 and ( ) を検索するときに sqmakeを使用するようになりました。ラインをドロップするだけで、うまくいくはずです。INCLUDEPATHSOURCESHEADERSconfig += depend_includepathDEPENDPATH

INCLUDEPATH += "Dir"

リファレンス: .pro ファイル内の Qmake 変数

于 2013-06-21T23:18:03.417 に答える