GCC 4.5.0 & GMP 5.0.1 的安装问题一例

在尝试升级GCC到4.5.0并进行配置时,遇到需要GMP 4.3.2以上版本的问题。安装GMP 5.0.1后,重新配置GCC时,cc1编译器报错找不到libgmp.so.10。尽管库文件位于/usr/local/lib中,但ldd显示cc1无法找到该库。检查发现/usr/local/lib已在ld.so.conf中,排除了路径问题。链接提到的可能是旧版GCC与新版GMP的兼容性问题。

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

自己的机器上Ub9.10自带gcc4.4.1版本,

前几天GCC 4.5.0 Release,想尝鲜一下,顺带用我们实验室的工具测试测试看看可能找出来错误。

下载解压之后./configure,报错,需要gmp 4.3.2 以上的版本。到gmp官网下载5.0.1版本下载安装。

安装完毕之后重新./configure,报错,找不到可用的cc编译器。

这个就把我搞糊涂了,查看config.log,发现cc1报错:

/usr/lib/gcc/i486-linux-gnu/4.4.1/cc1:   /

error while loading shared libraries: libgmp.so.10: /

cannot open shared object file: No such file or directory

使用 find /usr -name 'libgmp.so.*'找到缺失的文件确实在/usr/local/lib之中,但是cc1找不到,这就奇怪了。

想着可能是gmp新版本跟gcc旧版本不兼容的问题?搜索之后找到了这个链接:

http://forum.osdev.org/viewtopic.php?f=1&p=172532

里面提到了library的路径问题,顺着提示 cat /etc/ld.so.conf ,发现 /usr/loal/lib 已经包含在了路径之中。

又使用 ldd 命令查看cc1:

$ldd /usr/lib/gcc/i486-linux-gnu/4.4/cc1

linux-gate.so.1 =>  (0x003b6000)

libmpfr.so.1 => /usr/local/lib/libmpfr.so.1 (0x00d2

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值