我实际上不能用C语言编译一个简单的"helloworld“。当我输入"gcc hello.c”时,输出是: collect2: fatal error: ld terminated with signal 11 Segmentation
有人有主意了吗?
我试着重装了gcc,g++,make,cmake,binutils。这些都不管用。当我在终端中只输入"ld“时,输出是:”分段错误“。
发布于 2019-07-16 19:44:50
我可以用来解决这个问题
sudo apt purge binutils
sudo apt remove make
sudo apt autoremove
sudo apt install build-essential我不知道为什么它和build-essential一起工作...
发布于 2019-07-16 15:02:10
你可能会碰到这个老问题。https://bugzilla.redhat.com/show_bug.cgi?id=1557346 (从2018年3月开始,binutils 2.25,2.27)。
更新您的binutils。
例如:
# yum groupinstall Development Tools或
# apt-get install build-essential并安装内核源
# apt-get install linux-headers-$(uname -r)发布于 2019-07-16 15:06:05
你有没有更新过你的库?我认为在这种情况下可能缺少一些库。尝试执行以下操作:
which gcc您将得到如下输出:
/usr/bin/gcc然后使用以下命令检查库:
ldd /usr/bin/gcc这将为您提供库及其共享对象。检查是否全部可用。
同时检查一下gcc的版本,看看'gcc‘二进制文件是否正常工作。
gcc --versionhttps://stackoverflow.com/questions/57051568
复制相似问题