我的gcc和g++编译器在我的mac(OSX Yosemite 10.10.2).
我写了一个简单的"Hello World"程序,甚至这些似乎都不是工作我试着运行的两个程序是
你好。c
#include <stdio.h>
int main()
{
printf("Hello worldn");
return 0;
}
你好.cpp
#include <iostream>
int main()
{
std::cout << "Hello World";
}
我可以使用cc hello.c
编译C程序,一切都很好,但当我做gcc hello.c
时,我得到这个错误
[1] 38508 segmentation fault gcc hello.c
我在试图编译我的C++代码时遇到了类似的错误
[1] 38596 segmentation fault g++ hello.cpp
我做了which gcc
,得到了/opt/local/bin/gcc
,那个目录在我的路径(/usr/texbin /opt/local/bin /opt/local/sbin /bin /usr/sbin /sbin /usr/local/bin/usr/bin
)
所以我对正在发生的事情感到困惑。我以为我下载了所有Xcode我需要的东西。我想让gcc
和g++
运行正确地我希望你能帮忙。
谢谢!
似乎必须将gcc和g++安装/添加到MAC操作系统中。
根据你的描述,我认为这些工具安装的版本是错误的。
这个答案应该会有所帮助。
在继续安装gcc之前,请务必阅读该问题的所有答案。
我也遇到过类似的问题,甚至gcc --version
也给了我一个"Segmentation fault:11"。这是在带有XCode 6.4的OSX 10.10.5上。经过大量的谷歌搜索,我发现clang(苹果基于LLVM的C编译器)是gcc的兼容替代品,所以我只是将gcc符号链接到clang,如下所示:
whence gcc #=> /usr/local/bin/gcc
whence clang #=> /usr/bin/clang
cd /usr/local/bin
sudo mv gcc gcc_OLD
sudo ln -s /usr/bin/clang /usr/local/bin/gcc
gcc -v
Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.5.0
Thread model: posix
现在我能够成功地编译c语言的东西,比如我的ruby扩展。