2012-10-08 78 views

回答

9

通常,安裝gcc(GNU編譯器集合)時會安裝g ++。 首先確認你已經安裝了g ++。

您可以在終端中輸入以下內容來檢查:which g ++。 響應應該是/ usr/bin/g ++。

如果發現G ++安裝,在Eclipse中去項目 - >屬性 - > C/C++建設 - >查找選項,在工具GCC C++編譯器,把確切路徑G ++而不是G ++(如果g單獨++不工作)。

你會發現這個鏈接有用: What is the difference between g++ and gcc?

如果你還有問題,不要找回的反饋。

+0

版本選項給我「g ++(Ubuntu/Linaro 4.6.3-1ubuntu5)4.6.3」 – Will

+1

我將「編譯器調用命令」設置爲確切的路徑。沒有更改。 另外,是否有修復,而不是修復所有項目? – Will

+0

所以很明顯,你已經在盒子上安裝了g ++。這指向在eclipse中路徑不正確。嘗試在這裏添加路徑變量到環境:window-> preferences-> C/C++ - > build-> Environment。 – bobestm

1

我有完全相同的問題。在linux之前,我從來沒有遇到過Eclipse的問題,現在它甚至不會編譯代碼。我嘗試將g ++和gcc編譯器的名稱更改爲它們在project-> properties-> c/C++ Build-> discovery選項中的確切位置,沒有任何幫助,我嘗試重新安裝eclipse並進行初始化,將路徑添加到變數等。沒有工作如此的票價。我正在開發的這個項目很安靜,我寧願用eclipse來管理源代碼和makefile,而不是手動執行它。

Linux Mint 15 Eclispe:Version:3.8.1(我嘗試使用最新版本...沒有任何改變)

g ++ --version g ++(Ubuntu/Linaro 4.7.3-1ubuntu1)4.7.3版權所有(C)2012自由軟件基金會,這是自由軟件;請參閱複製條件的來源。沒有保修;甚至不適用於適銷性或針對特定用途的適用性。

gcc --version gcc(Ubuntu/Linaro 4.7.3-1ubuntu1)4.7.3版權所有(C)2012 Free Software Foundation,Inc.這是免費軟件;請參閱複製條件的來源。沒有保修;甚至不適用於適銷性或針對特定用途的適用性。

例如:

#include // not resolved using namespace std; 

int main() { 
    std::cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!! 
    return 0; 
} 

那麼上面的代碼是不是有什麼困擾我,因爲我可以通過添加修復包括精確C++包含路徑的,但代碼只是不會編譯。有線日食給我錯誤:

說明資源路徑位置類型在PATH首選項,C++ /內部版本/設置/發現,[CDT GCC內置編譯器設置]選項中未找到程序「g ++」C/C++掃描儀發現問題

但在我看來可以通過打開它們並按下crt + b來編譯單個文件,但是整個項目不會編譯。

今天上午解決了這一問題:
- 得到了最新的Eclipse
- 創建一個新的工作區
- 創建一個新的項目

幾秒鐘後,同樣的錯誤消失

9

我有類似的問題,它解決了

  1. 安裝克++的GNU C++使用ubuntu軟件中心,並

  2. 改變在編譯 -

    窗口 - >首選項 - > C/C++ - >構建 - >設置 - >發現 - > CDT GCC生成在編者設置[共享]

    來自:$ {COMMAND} -E -P -v -dD 「$ {INPUTS}」

    到:在/ usr /斌/ $ {COMMAND} -E -P - v -dD「$ {INPUTS}」

我希望它有幫助。我想如果你把它添加到第一個答案中提到的項目中,你將需要爲新項目添加所有時間。如果您按照我的建議添加,則無需將其添加到新項目中。

1

一旦我刪除了eclipse的.metedata文件夾,從命令行調用eclipse -initialize並再次啓動eclipse,這個問題就修復了。 HTH

0

在Eclipse啓動時創建一個新的Workspace目錄解決了我的問題。