GCC no OS X Lion com Xcode 4.3.1


14

Após instalar o Xcode 4.3.1 no OS X Lion, perdi meu compilador GCC. Eu preciso disso para o meu estudo. Alguém sabe como vou instalar isso? Tudo o que pude encontrar foram pessoas sugerindo a instalação do Xcode 4.3.1, mas com a versão mais recente do Xcode, a Apple mudou o compilador GCC dentro do Xcode.app e não parece ser a mesma versão do compilador GCC que o que acompanha as versões anteriores do Xcode.

Respostas:


24

Abra o XCode, vá para preferências em downloads, instale ferramentas de linha de comando


2
Esta foi definitivamente a maneira mais fácil de fazer isso. Obrigado.
SimonBS

15

Houve algumas postagens no blog sobre como fazer isso recentemente, no contexto de tentar compilar o Ruby 1.8.7 ( meu e outros ). A resposta curta:

Instale as Ferramentas de Linha de Comando (em Xcode: Preferências> Downloads> Componentes; ou você pode ir para a Apple e baixá-las separadamente se não tiver / deseja que o Xcode esteja instalado) - isso instala um gcccomando, mas na verdade é chamado Instalar Homebrew (instruções) , um gerenciador de pacotes para OS X

Em seguida, instale o repositório de homebrew 'dupes' e, a partir dele, o compilador genuíno do GCC 4.2:

brew update
brew tap homebrew/homebrew-dupes
brew install apple-gcc42

/usr/bin/gccainda será i686-apple-darwin11-llvm-gcc-4.2, mas /usr/local/bin/gcc-4.2será i686-apple-darwin11-gcc-4.2.1(e ferramentas associadas, g++-4.2e assim por diante, também em /usr/local/bin)

Em seguida, você pode usar qualquer mecanismo que seu processo de compilação use (por exemplo, definindo as variáveis ​​de ambiente CC e CXX adequadamente) para selecionar esses compiladores em vez das versões clang.


Eu realmente gostaria de ter encontrado sua solução há alguns dias. Eu lutei por dois dias seguidos. Eu teria +20 se pudesse.
Chance

5

Eu não uso o Xcode 4.3 para projetos reais do Xcode, apenas para a compilação da fonte da linha de comando e tive o mesmo problema. Você pode recuperar seus comandos gcc e cc com os comandos abaixo do terminal:

cd /usr/bin
rm cc gcc c++ g++
ln -s gcc-4.2 cc
ln -s gcc-4.2 gcc
ln -s c++-4.2 c++
ln -s g++-4.2 g++

Isso fará alterações em todo o sistema , portanto, certifique-se de que é isso que você deseja antes de fazê-lo.

Para que esses comandos funcionem, você também precisará instalar as Ferramentas de Linha de Comando do Xcode, se ainda não as tiver instalado. As Ferramentas podem ser instaladas através do painel de preferências de downloads do Xcode.


2
Uma sugestão: em vez de remover os binários antigos (linha 2 do script), talvez apenas os coloque em um diretório de archive em / usr / bin). Dessa forma, se você precisar deles, ainda poderá invocá-los por caminho absoluto.
Scott C Wilson

Boa sugestão. Faça com eles o que quiser, até: mv cc cc.orig && mv gcc gcc.origou algo assim.
LANTRIX
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.