在OS X上,我目前安装了几个版本的gcc。每当我使用gcc -v
或g++ -v
时,它都会告诉我:gcc version 4.2.1
。不过,我已经安装了gcc 4.7,以利用C ++ 11。如何更改它以使gcc / g ++指向4.7而不是4.2.1?
答案 0 :(得分:7)
我认为你可以做这样的事情。
转到/usr/bin
假设您已在小牛队中使用自制啤酒安装gcc-4.7
。
然后输入:
cd /usr/bin
sudo mv gcc gcc_mavs
sudo ln -s /usr/local/Cellar/gcc48/4.7.0/bin/gcc-4.7 gcc
在此类型之后验证您是否选择了正确的gcc编译器。
gcc -v
答案 1 :(得分:6)
如果我们不知道其他安装的完整路径,那就很棘手。但基本上您可以在本地用户.profile
设置中更改$ PATH顺序。因此,假设您的4.7安装位于/usr/local/bin/
&我们知道Apple默认版本位于/usr/bin/
,然后编辑您的.profile
,因此/usr/local/bin/
在$ /usr/bin/
之前以$ PATH顺序发布。
默认应该是这样的:
导出PATH = / usr / bin: / usr / local / bin :[等等等]
调整后应该是这样的:
export PATH = / usr / local / bin :/ usr / bin:[etc等等]
有一种方法可以强制所有用户在系统范围内进行此更改,但我不建议这样做。不要沉溺于Apple实施* nix环境的更深层次且通常是非标准的方式。将其保留在您的用户本地。
编辑 Check the discussion here,了解所提供的解决方案是否可以为您提供帮助。看起来像通过MacPorts安装gcc_select
似乎是最干净的解决方案。
答案 2 :(得分:0)
我在网上发现了一个非常好的教程。虽然它有点旧(描述了gcc 3.2的过程),但仍然可以使用相同的通用方法 http://www-numi.fnal.gov/offline_software/srt_public_context/WebDocs/install_gcc.html