Использование Homebrew с альтернативным GCC
Я установил gcc-4.6
с помощью формулы homebrew-alternatives gcc
, но я не могу заставить ее использовать этот GCC для установки других формул. В частности, Open-MPI и boost.
Кто-нибудь знает, как заставить Homebrew использовать этот новый компилятор?
Спасибо!
Ответы
Ответ 1
Эти ответы все довольно старые. Кажется, что в последних версиях homebrew есть опция "-cc", которая позволяет вам выбрать компилятор c для использования. Например
brew install --cc=gcc-6 <package-name>
будет установлен с использованием версии brew gcc
Ответ 2
Homebrew не может адаптироваться к другим версиям gcc, используя параметры командной строки. Вы можете легко переопределить старый компилятор, хотя, если вы отредактируете формулу open-mpi и boost. Например, вы можете добавить несколько команд после "def install" в open-mpi.rb:
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')
Это работало для меня на льве. Удачи.
Ответ 3
Похоже, что последние версии Homebrew теперь поддерживают переменные среды HOMEBREW_CC
и HOMEBREW_CXX
.
Итак, теперь вы можете сделать следующее:
$ HOMEBREW_CC=gcc-4.2 HOMEBREW_CXX=g++-4.2 brew install ice
Ответ 4
Из их вики похоже, что они не поддерживают другие компиляторы:
Установка пользовательской версии GCC или autotools в $PATH может привести к поломке множества компиляций. Поэтому мы придерживаемся компиляторов, предоставленных Apple.