当我尝试在我的Mac(OS X Lion)上安装scikit时,我偶然发现了这个错误:
未找到gcc-4.2,而是使用clang。
我搜索了如何修复此问题以及it seems未正确设置环境变量CC。我现在的问题是,我怎样才能改变这个以及我有什么要改变它?在我的/usr/lib/
中,我确实看到了g ++,gcc,llvm-g ++ - 4.2和llvm-gcc-4.2可执行文件。另外,当我检查env
时,我看不到CC变量。即使我尝试导出CC = gcc,我也不会使用env
命令看到它。
答案 0 :(得分:2)
有多种方法可以做到这一点:
如果您使用make
编译源代码,请使用以下命令:
make CC=/path/to/gcc CXX=path/to/g++ make CC=/path/to/gcc CXX=path/to/g++ install etc.
您可以通过以下方式永久更改默认编译器:
cd /usr/bin rm cc c++ gcc 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++
你也应该尝试clang
- 它一点也不差,并且在很多情况下已知产生与gcc
相当或更优化的程序。
答案 1 :(得分:1)
如果scikits 显式地寻找gcc-4.2,听起来它在设置过程中是硬编码的(坏主意i.m.o。)。
然后我会选择符号链接解决方案;与我的评论或Ramneek的答案略有不同,但几乎相同:
sudo ln -s /usr/bin/llvm-gcc-4.2 /usr/bin/gcc-4.2
答案 2 :(得分:0)
gcc
这样不应该在/usr/lib/
中,而且(也)在/usr/bin/
中。 /usr/lib/
中的那些是子目录,/usr/bin/
中的那些是可执行文件。
很可能你在这些子目录中有库,但不是实际的可执行文件和头文件。
您是否在安装XCode期间安装了命令行工具?