2012-02-08 61 views
10

我已經安裝gcc-4.6使用homebrew-alternatives gcc公式,但我似乎無法得到它使用該GCC來安裝其他公式。特別是Open-MPI和boost。使用替代GCC的自制軟件

有沒有人知道如何讓自制軟件使用這個新的編譯器?

謝謝!

回答

5

這些答案現在都相當老。看來最近的自制軟件版本有一個'-cc'選項,可以讓你選擇c編譯器來使用。例如

brew install --cc=gcc-6 <package-name> 

將安裝使用gcc的BREW版本

2

their wiki這聽起來像不支持其他的編譯器:

安裝GCC或自動工具的定製版本到$ PATH已經突破很多編譯的潛力。所以我們堅持使用Apple提供的編譯器。

15

Homebrew無法使用命令行選項來適應其他版本的gcc。不過,如果編輯open-mpi和boost公式,則可以輕鬆覆蓋較舊的編譯器。例如,你可以在打開mpi.rb中的「def install」之後添加一些命令:

def install 
    # Force compilation with gcc-4.6 
    ENV['CC'] = '/usr/local/bin/gcc-4.6' 
    ENV['LD'] = '/usr/local/bin/gcc-4.6' 
    ENV['CXX'] = '/usr/local/bin/g++-4.6' 

    # Compiler complains about link compatibility with FORTRAN otherwise 
    ENV.delete('CFLAGS') 
    ENV.delete('CXXFLAGS') 

這對Lion來說很合適。祝你好運。

+1

謝謝!這聽起來很像我想要的......我嘗試從命令行設置CC和CXX,但顯然釀造殺死了環境。 – 2012-02-15 20:13:43

15

看起來最新版本的Homebrew現在支持HOMEBREW_CCHOMEBREW_CXX環境變量。

所以,現在你可以做到以下幾點:

$ HOMEBREW_CC=gcc-4.2 HOMEBREW_CXX=g++-4.2 brew install ice 
+0

謝謝!這太棒了。 – 2014-02-01 03:11:23

+0

爲我工作! 'HOMEBREW_CC = gcc-4.5 HOMEBREW_CXX = g ++ - 4.5 brew install sfcgal' – Ring 2014-06-26 03:30:31

+0

爲什麼我不能做'HOMEBREW_CC = gcc-4.9 HOMEBREW_CXX = g ++ - 4.9 brew install openmpi' – ilciavo 2015-01-20 15:38:36