GCC 分段故障 Mac

Posted

技术标签:

【中文标题】GCC 分段故障 Mac【英文标题】:GCC Segmentation Fault Mac 【发布时间】:2015-03-25 18:11:38 【问题描述】:

让我的 gcc 和 g++ 编译器在我的 mac (OSX Yosemite 10.10.2)。

我编写了一个简单的“Hello World”程序,甚至这些似乎都没有 工作。我尝试运行的两个程序是

hello.c

#include <stdio.h>

int main()

    printf("Hello world\n");
    return 0;

hello.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 我需要的东西。我想让gccg++ 运行 适当地。希望能帮到你。

谢谢!

【问题讨论】:

如果在 OS X 上,你为什么不使用clang gcc -v 的输出可能会有所帮助,但恐怕您也会使用此命令出现段错误 【参考方案1】:

gcc 和 g++ 似乎必须安装/添加到 MAC 操作系统。

根据您的描述,我预计安装了错误版本的这些工具。

This answer 应该会有所帮助。

在继续安装 gcc 之前,请务必阅读该问题的所有答案。

【讨论】:

我使用了他们建议的 PATH 操作,它似乎解决了我的问题。 export PATH="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:$PATH"【参考方案2】:

我遇到了类似的问题,甚至 gcc --version 给我一个“分段错误:11”。这是在带有 XCode 6.4 的 OSX 10.10.5 上。经过多次谷歌搜索但没有解决方案,我发现 clang(Apple 基于 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​​ 扩展。

【讨论】:

以上是关于GCC 分段故障 Mac的主要内容,如果未能解决你的问题,请参考以下文章

在 C 中转储的分段故障核心

确定导致分段错误的代码行?

python OpenCV分段故障(核心转储)

分段故障删除节点

装配分段故障恢复

C ++分段故障向量[关闭]