qmake的默認行爲是添加項目的根路徑以包含路徑。在Makefile中,它會生成如下內容:如何從包含路徑中刪除項目的根目錄qmake
INCPATH = -I..\bug -I. -I..\..\Qt\Qt5.8.0\5.8\mingw53_32\mkspecs\win32-g++
其中「bug」是項目的名稱。我不想要「 - 我」。部分。我如何在.pro
文件中刪除這個?
我想:
INCLUDEPATH -= "."
但它改變不了什麼。
詳細解釋:我的項目在Linux上編譯得很好,但在Windows(mingw)上編譯失敗。經過深入研究,我意識到在標準C++庫(string.h)中包含了名爲「process.h」的文件。問題是在我的項目中有一個名字完全相同的文件。反過來,我項目中的文件被包含到標準庫的頭文件(!!)中。該行爲導致字符串頭文件無法編譯。
一個明顯的解決方法就是重命名'process.h'文件在您的項目。 –
@KubaOber它不是任何解決方案。這是一種解決方法。 – jaskmar
這是有爭議的。您也會在其他構建系統上反覆出現該問題。一般來說,在您的項目中有任何與任何常用標準標題相同的文件都是非常糟糕的主意。通過專注於qmake你可以在路上踢球:) –