2012-11-12 47 views
2

沒有解決方案我在互聯網上找到的解決方案迄今爲止工作。g ++不再找到標準庫OSX 10.6.8

我正在運行OSX 10.6.8。我以前一直在使用gnu編譯器來處理C/C++。我切換到XCode並沒有問題,但我想使用命令行。但是,擦拭我的電腦並從備份恢復後,我得到錯誤bash:g ++命令未找到。

首先,我想我的$ PATH有一點靠不住的,所以我試圖在正確的路徑Path變量增加,現在它承認g ++以及試圖編譯。不過,現在我得到這個錯誤:

hello.cpp:3:20: error: iostream: No such file or directory 
hello.cpp: In function ‘int main()’: 
hello.cpp:8: error: ‘cout’ is not a member of ‘std’ 

這裏是世界您好!代碼:已在網上發佈

#include <iostream> 

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

解決方案主要被用命名空間和#include語句的問題,但我不認爲這是此時的錯誤。

當我輸入我得到 「其中G ++」 到終端:/開發人員在/ usr/bin中/ G ++ 當我鍵入g ++ -v我得到:

Using built-in specs. 
Target: i686-apple-darwin10 
Configured with: /var/tmp/gcc/gcc-5666.3~6/src/configure --disable-checking --enable-werror --prefix=/usr --mandir=/share/man --enable-languages=c,objc,c++,obj-c++ --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ --with-slibdir=/usr/lib --build=i686-apple-darwin10 --program-prefix=i686-apple-darwin10- --host=x86_64-apple-darwin10 --target=i686-apple-darwin10 --with-gxx-include-dir=/include/c++/4.2.1 
Thread model: posix 
gcc version 4.2.1 (Apple Inc. build 5666) (dot 3) 

4.2.1是一個較舊的版本,所以如果有一件事我可以改變它將切換到我在usr/local/Cellar/gcc中找到的4.7.2。我不確定當我在其他論壇上發現使用自制軟件安裝gcc時,Cellar可能是從哪裏來的。

在此先感謝,這超出了我的肯定。

+0

「我以前一直在用C/C++的gnu編譯器,我改用Xcode」 - 在這裏你搞砸了。回到命令行,真的。 Xcode是廢話。 (哦,+1補償你在Xcode的編程反模式引入的這個問題上浪費的時間。) – 2012-11-12 23:14:48

回答

0

當你安裝了XCode,你根本都忘了檢查小複選框,說:「安裝UNIX命令行實用程序」。當你這樣做時,你會在/ usr /中安裝完整的GCC。安裝在/ Developer /中的一個不適用於命令行使用。它僅適用於XCode圖形化IDE。

+0

好吧,我應該重新安裝Xcode然後檢查那個盒子?我的Xcode版本是3.2.6,我查看了蘋果的開發者網站,他們似乎沒有下載任何東西4.我會檢查CD。 – DavidH

+0

@DavidH OS X 10.6的最新XCode是3.2.6(xcode_3.2.6_and_ios_sdk_4.3.dmg)。所以你已經有了最新版本。更高版本的XCode僅適用於OS X 10.7及更高版本。我不認爲你需要完全重新安裝。也許再次啓動安裝程序將只允許您修改現有安裝。嘗試一下,只需安裝Unix工具。 –

+0

謝謝!我會這樣做,然後更新。 – DavidH