2012-04-29 5 views
6

У меня возникли проблемы с получением доморощенного для работы на льве. По какой-то причине он собирает clang, а не gcc.Homebrew не может найти gcc

==> Upgrading gnutls 
... 
checking for gcc... 
/usr/bin/clang checking whether the C compiler works... no 

'заварить врач говорит:

We couldn't detect gcc 4.2.x. Some formulae require this compiler. NOTE: Versions of XCode newer than 4.2 don't include gcc 4.2.x. 

ПРИМЕЧАНИЕ: Я уже установил инструменты командной строки из XCode, в том числе НКУ.

$ which gcc 
/usr/bin/gcc 
$ gcc -v 
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.9.00) 

Как я могу заставить варить использовать gcc?

ответ

12

После Xcode 4.2 Apple прекратила распространение gcc с помощью Xcode. Вместо этого они распространяют llvm-gcc (и clang), которые являются не gcc. Вы можете увидеть это с помощью gcc -v, как и вы: он показывает LLVM build.

Чтобы использовать gcc, вам придется скомпилировать его самостоятельно. Для этого есть формула доморощенного, но вам нужно будет использовать доморощенные/обманы с brew tap homebrew/dupes.

Обратите внимание, что на сегодняшний день формула gcc не работает, если скомпилирована с clang. Вы должны установить его с brew install --use-llvm gcc.

Также обратите внимание, что Homebrew явно ищет gcc-4.2. Вам нужно будет создать символическую ссылку для Homebrew, чтобы найти gcc.

+0

Спасибо за информацию. Я попробовал «варить крана», но моя версия варева была слишком старой для этой новой функции, и «варить обновление» - это то, как я добрался до ошибки в моем первоначальном вопросе, поэтому я застрял. Я решил решить мою проблему с деинсталляцией (см. [Здесь] (https://github.com/mxcl/homebrew/wiki/FAQ/1ef6c2cf55db89252949c7bb2908abe093a3414a)), а затем переустановить (см. [Здесь] (https://github.com)./mxcl/доморощенного/вики/установка)). Я также должен был сделать несколько дополнительных шагов перед повторной установкой, потому что я неправильно установил пиво в качестве корня, например. msgstr "sudo rm /usr/local/.git". В конце концов, мне не нужен новый gcc. – ishmael

+1

@ishmael В этом разница между 'brew update' (сам самодельный) и' brew upgrade' (формулы). –

+0

Для меня, -use-llvm будет ошибкой при создании бутстрапа. 'brew install --use-gcc gcc48' работает для меня. – xgdgsc

Смежные вопросы