簡體   English   中英

QT 5.2.1的編譯錯誤; “刪除”之前的預期不合格ID

[英]Compile error for QT 5.2.1; expected unqualified-id before 'delete'

我正在嘗試為較舊的Linux發行版(Suse Linux Enterprise 11)編譯QT 5.2.1 ,一段時間后,我收到以下錯誤:

In file included from qxcbxsettings.cpp:46:0:  
/usr/include/X11/extensions/XIproto.h:1825:17: 
    error: expected unqualified-id before 'delete'  
BOOL        delete;

我或多或少有信心這是由“刪除”是C ++的保留字引起的。 如果此標頭是我自己的標頭,則可以簡單地將delete重命名為其他標頭,但是在X11標頭文件的情況下當然不可以。
有什么想法可以強制gcc將此標頭編譯為純C嗎? 我發現的只是qt的configure腳本的configure選項-no-c++11 ,但這沒什么不同。

delete是C ++中的保留關鍵字, 此處報告了與X11 / extensions / XIproto.h文件相關的錯誤。

他們還提供了相同的補丁

所以你需要應用補丁來編譯進一步的補丁,就像

+#if defined(__cplusplus) || defined(c_plusplus)
+    BOOL        c_delete;
+#else
     BOOL        delete;
+#endif 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM