我已经在 lion 上安装了 gcc 4.6.1,我是否应该覆盖默认的 gcc?

我已经在 lion 上安装了 gcc 4.6.1,我是否应该覆盖默认的 gcc?

我(或多或少)遵循了这里的说明http://solarianprogrammer.com/2011/09/20/compiling-gcc-4-6-1-on-mac-osx-lion/安装较新版本的 gcc,以便可以在新机器上构建 ruby​​。

因此,我现在已将 gcc 安装到 ~/my_gcc,并且说明说通过运行来访问此位置的 gcc

export PATH=$HOME/my_gcc/bin:$PATH

我这样做了,但是检查版本时仍然得到旧的 gcc。

$ gcc -v
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)

如果我将 /usr/bin/gcc 中的 gcc 移至 gcc_old,则即使我 echo $PATH 时 ~/my_gcc/bin 路径确实显示出来,也无法识别任何 gcc。我应该将 ~/my_gcc/bin 复制到 /usr/bin 吗?

答案1

我使用以前的方法解决了这个问题(遇到了完全相同的问题),不幸的是我无法想出一个非黑客解决方案..但是:

使用which gcc将告诉您默认安装的 gcc 在哪里。现在,如果我是您,我会将旧 gcc 移动到新目录,并在旧目录中创建指向新 gcc 目录的符号链接。

gcc -v此后再试。

抱歉,我的方法不合法。我还没有想出一个干净的解决方案。

如果我看到有人这样做,我会+1。

祝你好运

答案2

如果你已经遵循了程序描述在这里,你应该询问my-gcc,,my-g++等等my-gfortran。作者故意添加了“my-”前缀,以免弄乱 Apple 的编译器。

my-gcc -v

应该返回gcc-4.6.14.6.2

相关内容