2016-10-26 65 views
0

我有一個項目,它看起來像這樣:未能找到MyClass.cpp

結構:

MyProject 
--- MyProject.pro 
--- .qmake.conf 
--- src 
    --- src.pro 
    --- tmp 
     --- MyClass.cpp 
     --- MyClass.h 

MyProject.pro

TEMPLATE = subdirs 
SUBDIRS = src 

.qmake.conf

TOP_DIR=$$PWD 

src.pro

... 

INCLUDEPATH += "$$TOP_DIR/src/tmp/" 

SOURCES += MyClass.cpp 

HEADERS += MyClass.h 

... 

現在,如果我嘗試運行qmake,我會收到警告Failure to find MyClass.cpp。有沒有另一種方法可以告訴qmake他應該在哪裏尋找* .cpp/h文件?

我正在使用Qt 5.7(這意味着DEPENDPATH將不起作用)。

回答

1

包含路徑(INCLUDEPATH)僅用於cpp /頭文件中的include語句。就像那些:

#include <someHeader> 

對於項目文件必須指定的相對路徑。

SOURCES += tmp/MyClass.cpp 
+0

我知道那個選項,但有沒有其他方法?例如,如果我創建了另一個文件夾(與src'相同的級別),並且希望包含來自'src'的大量文件,我是否真的必須手動編輯所有路徑而不是一個? – carobnodrvo

+0

@carobnodrvo我現在不能測試它,但是如果你想**所有**目錄結帳中的cpp文件'find' http://doc.qt.io/qt-5/qmake-test-function-reference。 html#files-pattern-recursive-false它也可以遞歸地運行到子目錄中。 – Hayt