/usr/bin/ld: 找不到 -lgcc_s怎么办?

解决问题的步骤

在本地电脑上查找是否有这个库文件
sudo find /usr/ -name libgcc_s.so

结果如下所示

/usr/lib/gcc/x86_64-linux-gnu/7/32/libgcc_s.so
/usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so
/usr/lib/gcc/x86_64-linux-gnu/7/x32/libgcc_s.so
/usr/lib/gcc/x86_64-linux-gnu/3.4.6/32/libgcc_s.so
/usr/lib/gcc/x86_64-linux-gnu/3.4.6/libgcc_s.so
/usr/lib/x86_64-linux-gnu/libgcc_s.so

以上说明在本地电脑上有该文件。

查找文件的搜索路径
ld -lgcc_s --verbose

结果如下

试图打开 //usr/local/lib/x86_64-linux-gnu/libgcc_s.so 失败
试图打开 //usr/local/lib/x86_64-linux-gnu/libgcc_s.a 失败
试图打开 //lib/x86_64-linux-gnu/libgcc_s.so 失败
试图打开 //lib/x86_64-linux-gnu/libgcc_s.a 失败
试图打开 //usr/lib/x86_64-linux-gnu/libgcc_s.so 失败
试图打开 //usr/lib/x86_64-linux-gnu/libgcc_s.a 失败
试图打开 //usr/lib/x86_64-linux-gnu64/libgcc_s.so 失败
试图打开 //usr/lib/x86_64-linux-gnu64/libgcc_s.a 失败
试图打开 //usr/local/lib64/libgcc_s.so 失败
试图打开 //usr/local/lib64/libgcc_s.a 失败
试图打开 //lib64/libgcc_s.so 失败
试图打开 //lib64/libgcc_s.a 失败
试图打开 //usr/lib64/libgcc_s.so 失败
试图打开 //usr/lib64/libgcc_s.a 失败
试图打开 //usr/local/lib/libgcc_s.so 失败
试图打开 //usr/local/lib/libgcc_s.a 失败
试图打开 //lib/libgcc_s.so 失败
试图打开 //lib/libgcc_s.a 失败
试图打开 //usr/lib/libgcc_s.so 失败
试图打开 //usr/lib/libgcc_s.a 失败
试图打开 //usr/x86_64-linux-gnu/lib64/libgcc_s.so 失败
试图打开 //usr/x86_64-linux-gnu/lib64/libgcc_s.a 失败
试图打开 //usr/x86_64-linux-gnu/lib/libgcc_s.so 失败
试图打开 //usr/x86_64-linux-gnu/lib/libgcc_s.a 失败
ld: 找不到 -lgcc_s
建立一个硬链接过去,使得可以连接到这个库文件
sudo ln -s  /lib/x86_64-linux-gnu/libgcc_s.so /usr/lib/gcc/x86_64-linux-gnu/3.4.6/libgcc_s.so

建立一个链接到库文件上,注意此时如果还不行,检查对应硬链接的指向,一定不要指向一个空文件。

对于本问题应该掌握的知识

命令行代码知识

主要的命令行代码如下

sudo find /usr/ -name libgcc_s.so
ld -lgcc_s --verbose
sudo ln -s  /lib/x86_64-linux-gnu/libgcc_s.so /usr/lib/gcc/x86_64-linux-gnu/3.4.6/libgcc_s.so

第一行对应的是查找函数,按名称查找。
ldd命令用于判断某个可执行的 binary 档案含有什么动态函式库。–verbose 打印所有信息,例如包括符号的版本信息
ln命令用来为文件创件连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接。如果要创建符号连接必须使用"-s"选项。建立后面文件的一个链接。

隐含知识

库文件的文件名一般为-libName.so,在编译时的一般为-lName.

参考文献

如果仍然没有帮助,请参考下面网址:Install G77 on Ubuntu >=14.04

  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值