2013-09-22 118 views
0

安裝了GCC 4.7,但我的Mac目前使用4.2。我該如何切換它?將GCC從4.2.1更改爲Mac上的更新版本

有些細節可能會有所幫助:

OS:獅子10.7.5

GCC 4.2.1

GCC 4.2.1的路徑:在/ usr/bin中/ GCC

的GCC 4.7

路徑:/usr/local/bin/gcc-4.7

+0

更改您的PATH變量,以便新的GCC在舊的之前。 – SevenBits

+0

所以作爲一個開發者,你真的不知道'$ PATH'? – trojanfoe

回答

0

安裝GCC 4.8到4.5的Xcode,Xcode的4.6時,Xcode 5.0:

的人誰沒有安裝GCC 4.8:

安裝家庭釀造的新版本

你可以找到方法如何安裝Internet

更新您的BREW到最新的版本($brew update

$brew install gcc48 --enable-all-languages 1.

(可能應該安裝MPC,MPFR和通過GMP沖泡,http://solarianprogrammer.com/2013/06/11/compiling-gcc-mac-os-x/

2. $brew link gcc48

3.backup克++,GPP,C++,CPP,C++中/usr/bin/

4. [可選步驟]:

別名克++ - 4.8,GPP -4.8,C++ - 4.8,CPP-4.8,C++ - 4.8

/usr/local/Cellar/gcc48/4.8.2/bin/g++

/usr/bin/

[以上4個步驟對沒有安裝誰開發的gcc]

[@ 「唐尼P」:你可以跳過上述4個步驟]

5.撥打插件

1)下載a plugin of GCC 4.5 for Xcode

2)改變每 「4.5」 到 「4.8」, 「4_5」 到 「4_8」,文件名,文件內容,

除文件GCC 4.5.xcspec中的「com.apple.compilers.gcc.headers.4_2」。

您可以保留內容English.lproj不變,並刪除Japanese.lproj

3)在文件GCC 4.8.xcspec

(希望你已經改變GCC 4.5.xcspecGCC 4.8.xcspec

變化的文件名ExecPath = "...」;

ExecPath = "/usr/local/bin/gcc-4.8"(@ 「唐尼P」:你可以改變它到「/usr/local/bin/gcc-4.7」)

ExecPath = "/usr/local/Cellar/gcc48/4.8.2/bin/gcc-4.8"(對於通過brew安裝gcc-4.8的人)

ExecPath = "/usr/bin/gcc"(對於誰完成步驟4.人)

4)刪除「-Wshorten-64至32」的部分在文件GCC 4.8.xcspec

{ 
    Name = "GCC_WARN_64_TO_32_BIT_CONVERSION"; 
    Type = Boolean; 
    DefaultValue = NO; 
    CommandLineArgs = { 
     YES = (
      "-Wshorten-64-to-32", 
     ); 
     NO =(); 
    }; 
    AppearsAfter = "GCC_WARN_PROTOTYPE_CONVERSION"; 
    Category = Warnings; 
    CommonOption = NO; 
    DisplayName = "Implicit Conversion to 32 Bit Type"; 
    Description = "Warn if a value is implicitly converted from a 64 bit type to a 32 bit type. 
    [GCC_WARN_64_TO_32_BIT_CONVERSION, -Wshorten-64-to-32]"; 
} 

6.put編輯GCC 4.8.xcplugin

/Applications/Xcode.app/Contents/Plugins/Xcode3Core.ideplugin/Contents/SharedSupport/Developer/Library/Xcode/Plug-ins/

7.reopen Xcode。

現在,新插件已經爲您準備好了。您可以看到新的GCC編譯器插件在項目的「生成設置」

8.change在Xcode中創建項目

1)設置在project的「編譯器C/C++/Objective-C的」和在Xcode target設置

變化 「編譯器C/C++/Objective-C的」 到 「GCC 4.8」

2)在project設置

刪除「CLANG_CXX_LIBRARY」行

+0

這看起來像很多麻煩 - 我不能打擾做甚至一半。 – trojanfoe

+0

這不是官方的。但是如果你想使用Xcode 4.5+ IDE來處理GCC,你別無選擇。 – frogcjn

+0

蘋果提供的鐺有什麼問題? – trojanfoe