1. 程式人生 > >關於.Pro檔案中引入原始檔的不同寫法,導致QMake無法生成正確的Makefile檔案的錯誤

關於.Pro檔案中引入原始檔的不同寫法,導致QMake無法生成正確的Makefile檔案的錯誤

緣起

今天用Qt Creator 3.4.1 開啟一個很老的工程,還是QT 4.5.2的,VS2008版本編輯的;沒有語法錯誤,卻在連結時提示"LNK2019: 無法解析的外部符號 "public: static class Log * __cdecl Log::instance(void)" ([email protected]@@[email protected]),該符號在函式 _main 中被引用"的錯誤。

在main.cpp中能夠include標頭檔案,在Qt Creator中使用快捷鍵F2也能夠跳轉到該類的函式定義中去。百思不得其解。

結果

原來是.Pro檔案中的寫法不同導致的。先上鍊接不通過的.Pro檔案部分截圖

這裡企圖用萬用字元的方式將該資料夾下的原始檔加入工程;這本身沒有什麼問題,QT Creator的工程樹中也能夠索引config資料夾中的檔案,但是QMake生成Makefile.Debug中出現了這麼個玩意兒


然後我就覺得QT Creator找的到該檔案,QMake找不到;就得改,讓它找到,截圖如下:

然後就得到了我們需要的Makefile.Debug檔案:


我對QMake學習的很少,也不知道什麼原因,既然發現了這個現象,就記一下,歡迎批評指正啊!!!!