/usr/bin/ld: cannot find -lc 的解决办法

1. gcc没有加-static参数

使用find /usr/ -name "libc.so",如果没有内容搜出来,那么就是qlibc没有装,需要安装一个。在CentOS-6.2-x86_64-bin-DVD1.iso里面有qlibc的安装包。网上很多配yum repo的教程,照做就好。如果明确知道缺少什么,直接mount -o loop CentOS-6.2-x86_64-bin-DVD1.iso /media/cdrom然后cd /media/cdrom/Packages,rpm安装qlic就行,不用配置yum repo那么麻烦;网络通的情况下,yum install glibc glibc-devel更快捷。

如果使用find /usr/ -name "libc.so"搜到了内容,那么检查搜到的软链接的有效性吧。如果不行,可以卸掉qlibc再重装一个。

2. gcc 使用-static参数

网上有些朋友见到/usr/bin/ld: cannot find -lc 这个错误就认为是libc.so的问题,这稍显片面。当链接时指定了-static参数时,ld找的是libc.a。这个家伙在qlibc-static包里。在安装centos6.2时,32bit的centos会把静态的c库安装上,64bit的却没有,在CentOS-6.2-x86_64-bin-DVD1.iso里也找不到。实际上,它在dvd2里,如何安装就不说了……

当然,同上,如果已经联网的话,yum install glibc-static更方便

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值