gcc编译错误整理

本文介绍了在Linux环境下遇到的编译错误,包括找不到特定头文件、链接器找不到关键文件及未定义引用等问题,并提供了详细的解决方案,如更换软件版本、设置正确的库路径等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

.configure

1》header files gmp-impl.h and longlong.h not found

mpfr3.0mpfr2.4.2

2》/usr/bin/ld: cannot find crti.o: No such file or directory

32位)/usr/lib/i386-linux-gnu/crti.o
(64位)/usr/lib/x86_64-linux-gnu/crti.o

2.将该路径添加到LIBRARY_PATH 

方法一:(仅当前shell生效,关闭shell将失效)

(32位)
LIBRARY_PATH=/usr/lib/i386-linux-gnu:$LIBRARY_PATH 
export LIBRARY_PATH
(64位)
LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LIBRARY_PATH
export LIBRARY_PATH

方法二:(永久生效)

(32位)
$ echo "export LIBRARY_PATH=/usr/lib/i386-linux-gnu" >> ~/.bashrc
$ source ~/.bashrc
(64位)
$ echo "export LIBRARY_PATH=/usr/lib/x86_64-linux-gnu" >> ~/.bashrc
$ source ~/.bashrc

3>

undefined reference to `__cxa_call_unexpected'的解决方法

主要就是替换掉/gcc-4.5.0/libjava目录下的prims.cc文件,用于替换的文件可以在 这里下载

make

make install

然后 ls /usr/bin/gcc* -l(这个命令是我看的,我自己因为configure的时候改了路径,所以这个我没有显示我安装过的gcc路径的,遗憾)
显示你的gcc版本

删除的gcc版本   sudo rm /usr/bin/gcc(这个必须要删,不然这个文件被占用了,你后面添加不进去gcc版本了)

更改gcc版本   sudo ln -s /usr/bin/gcc-4.4 /usr/bin/gcc(添加软链接)

love 钓鱼竿

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值