被.pro文件中的相對路徑給整糊塗了,仔細研究后,原來.pro文件中有兩種相對路徑。
一種情況下./表示.pro文件所在的目錄
另一種情況下./表示構建生成目錄
INCLUDEPATH SOURCE FORM HEADERS 這些變量中使用的./指的是.pro文件所在的目錄
而DESTDIR OBJECTS_DIR MOC_DIR UI_DIR這些變量中使用的./指的是構建生成目錄。
如果沒有選擇影子構造(shadow build),通常構建生成目錄和.pro文件所在目錄是同一個目錄但是如果指定了shadow build,且指定了構建生成目錄,情況就不一樣了