Gcc 4.2 версия отсутствует - PullRequest
       19

Gcc 4.2 версия отсутствует

3 голосов
/ 04 ноября 2011

на моем новом MacBook Pro с osx lion и XCode 4.1 У меня есть некоторые проблемы с gcc.

В /usr/bin Я не могу найти gcc-4.2

У меня есть только следующие версии:

i686-apple-darwin11-llvm-gcc-4.2
llvm-gcc
llvm-gcc-4.2 

В результате, когда я пытаюсь выбрать gcc42 с помощью port select --set gcc gcc42, он возвращает мне следующую ошибку: Selecting 'gcc42' for 'gcc' failed: could not create new link "/opt/local/bin/gcc": target "/usr/bin/gcc-4.2" doesn't exist

Однако port select gcc возвращает мне следующие версии:

apple-gcc42
gcc42
llvm-gcc42 (active)
mp-gcc44

Как я могу исправить эту проблему?

Спасибо!

Ответы [ 6 ]

7 голосов
/ 09 августа 2012

Мне удалось решить эту проблему в Mountain Lion с помощью символической ссылки:

sudo ln -s /usr/bin/llvm-gcc-4.2 /usr/bin/gcc-4.2

Надеюсь, это кому-нибудь поможет

6 голосов
/ 04 ноября 2011

Должно быть /usr/bin/gcc-4.2 с установленным Xcode 4.1. Однако, с недавним обновлением Xcode 4.2, Apple, наконец, удалила их модифицированный стандарт gcc-4.2. Остается либо llvm-gcc42 (также символическая ссылка на gcc) и clang, более новый компилятор C без поддержки gcc. Apple делает переход на clang; первым шагом является использование гибрида llvm-gcc42. Были некоторые проблемы с использованием любого из новых компиляторов. Вы должны использовать это время, чтобы выяснить, есть ли у вас проблемы с ними, и, если это так, исправить свой код и сообщить об ошибках в Apple. В то же время, если вам абсолютно необходим старый gcc-4.2, можно создать аналогичный предыдущему модифицированному Apple через MacPorts:

port install apple-gcc42

но вы будете плыть против течения.

5 голосов
/ 20 февраля 2012

В Xcode 4.3 вам необходимо отдельно установить инструменты командной строки.XCode -> «Настройки» -> «Загрузки», нажмите кнопку «Компоненты» и нажмите «Установить» рядом с параметром «Инструменты командной строки».

2 голосов
/ 04 августа 2012

У меня была такая же проблема.

Я исправил ее, выполнив символическую ссылку.

Примерно так:

cd /usr/bin

затем:

sudo ln -s llvm-gcc-4.2 gcc-4.2
0 голосов
/ 06 декабря 2012

Я вмешался во внутренности make-файла и обнаружил, что одна вызванная опция предоставила слишком много аргументов; заменил переменную фактическим результатом функции, вызванной на моем компьютере (удалив лишний аргумент), и снова запустил make, это сработало.

0 голосов
/ 04 ноября 2011

Вы можете рассмотреть возможность компиляции более нового GCC (например, 4.6.2) из ​​его источника code . Apple больше не заботится о GCC, но GCC добился значительного прогресса с 4.2

И вы, вероятно, могли бы использовать llvm-gcc42 в качестве компилятора GCC.

...