由於我從Eclipse Indigo升級到Juno(在Ubuntu 12.04上),我一直遇到問題,它顯示標準庫的「未解決的包含」錯誤(例如旁邊#include <iostream>
和#include <vector>
等),雖然程序生成並運行良好(使用g ++)。這隻發生在使用Juno創建的新項目中,而不是Indigo的舊項目在我的工作區中。帶有CDT的Eclipse Juno不會添加內置的包含目錄
感謝其他幾個SO問題(見下面的*),我能夠追蹤到問題的根源,因爲項目的屬性> C/C++常規>路徑和符號中缺少「內置值」 >包括標籤:
/usr/include/c++/4.6
/usr/include/c++/4.6/x86_64-linux-gnu
/usr/include/c++/4.6/backward
/usr/lib/gcc/x86_64-linux-gnu/4.6/include
/usr/lib/gcc/x86_64-linux-gnu/4.6/include-fixed
/usr/include/x86_64-linux-gnu
/usr/include
存在時「顯示內置值」複選框我是沒有這個問題的老靛藍項目打勾,但在我與朱諾創建新的項目不存在的。果然,如果我手動將這七個目錄添加到項目設置的「包含」選項卡中,問題就會消失。但我不想爲每個新創建的項目手動執行此操作。是否有這個原因不再是Juno的默認設置,並且有辦法恢復它嗎?
*其他SO類似問題的問題,我已經諮詢,但並沒有解決我的問題:
- Eclipse 3.7.0 Indigo with CDT shows many false compilation errors:我認爲伊麗莎白Geréb的答案會是我的解決方案 - 在朱諾,當我創建一個新的C++項目與「項目類型」作爲「GNU Autotools」下的類別之一而不是「可執行文件」,內置目錄就在那裏。 (在Indigo中,沒有GNU Autotools類別,如果我在Indigo中將它創建爲「可執行文件」下的空白或Hello World項目,那些目錄就在那裏,但是如果我在Juno中這樣做的話,它們就不是這樣了 - )然後,在「GNU Autotools」項目中,當我進入項目的Properties> C/C++ Build> Settings時,「Tool Settings」選項卡不再顯示,我是無法添加GCC C++編譯器的包含路徑和GCC C++鏈接器的庫,我需要這樣做,因爲我的許多C++項目都使用OpenCV庫。
- "Unresolved inclusion" error with Eclipse CDT for C standard library headers:叫我如何添加手動include路徑,而不是如何有內置的那些默認
- error , Symbol 'vector' could not be resolved補充:清潔
~/.eclipse/
和重建索引並沒有幫助。 - Eclipse CDT Builtin Include Directories:發現選項設置與我的正常工作的項目相同。
- eclipse CDT 8.01 - default paths (libstdc,libstdc++) totally disappeared in 'includes' directory
- Eclipse CDT indexer lost after system update:不解決所有新項目的問題。
這樣的問題也正好與其他的Eclipse版本,例如開普勒,就像你建議的那樣,不僅在升級版本時,而且在其他各種情況下。 – einpoklum 2013-07-16 07:21:21
建議你接受@ languitar的答案,它爲我的作品...... – einpoklum 2013-07-16 07:22:54