/usr/bin/ld: cannot find -lgcc_s 问题解决小记

博客分类:
Linux/Ubuntu

由于之前用wubi装的ubuntu并且只给了它10G的硬盘空间,随着学习的深入这种 配备已经无法满足我的需求了。今天索性把ubuntu从windows上“卸载了”,划了20G -_-的空余空间准备安装ubuntu双系统。双系统的安装过程很顺利,但接下来Qtopia的编译就不是很顺利了。我根据前面编译Qtopia时做的记 录文档对源文件还有系统变量进行了若干修改,但是实际编译的过程却跳出了我之前没有遇到的问题。

Linux代码 收藏代码

/usr/bin/ld: cannot find -lgcc_s

终端不断跳出这个错误提示。意思是系统找不到需要链接的库文件。(该库文件为libgcc_s.so)

gcc编译器我用的是3.4.6的版本。一开始我以为系统找不到3.4版本对应的库文件,故打开/etc/ld.so.conf.d目录,添加i486-linux-gnu.conf文件,编辑如下:

Linux代码 收藏代码

# Multiarch support
/usr/lib/gcc/i486-linux-gnu/3.4.6/

#添加库文件寻找路径

终端下输入指令:ldconfig 以更新缓存。
但是再次编译Qtopia发现 还是一样的问题。断定不是库文件目录缺失的问题。于是我自己到/usr/lib/gcc/i486-linux-gnu/3.4.6/文件夹下查找 libgcc_s.so文件。libgcc_s.so是一个链接文件,链接到对应目录的libgcc_s.so.1文件。打开libgcc_s.so弹出 提示链接已损坏。于是一切豁然开朗:文件未能链接到正常的库文件。接下来在终端下输入:

Java代码 收藏代码

locate libgcc_s.so.1

以寻找库文件实际路径(注:我电脑里面同时有4.5版的编译器,该版链接的也是这一个库文件)

弹出:

Linux代码 收藏代码

/lib/i386-linux-gnu/libgcc_s.so.1

于是重定向3.4版编译的的libgcc_s.so链接

Linux代码 收藏代码

ln -sf /lib/i386-linux-gnu/libgcc_s.so.1 /usr/lib/gcc/i486-linux-gnu/3.4.6/libgcc_s.so

为了验证是否能正确链接到,我在桌面上新建了hello.c文件并vim之

C代码 收藏代码

#include <stdio.h>

int main()
{
printf("Hello World!\n");
}

编译:gcc -o hello hello.c

无错误提示。          

运行:./hello

得到我们熟悉的“Hello World!”,呼,问题终于解决了!!!

附:Linux文件链接命令

例:$ ln - s lunch /home/xu
用户为当前目录下的文件lunch创建了一个符号链接/home/xu。
删除符号链接,有创建就有删除
rm -rf symbolic_name 注意不是rm -rf symbolic_name/
链接文件的查看命令:ls
例如:ls -al或者ls -li

/usr/bin/ld: cannot find -lgcc_s 问题解决小记的更多相关文章

  1. make报错:"/usr/bin/ld: cannot find -lXXX"

    在编译php时报错如下: # make ... /usr/bin/ld: cannot find -lltdlcollect2: ld returned 1 exit statusmake: *** ...

  2. /usr/bin/ld: cannot find -lc错误原因及解决方法

    问题解决 我在执行如下命令的时候,出现了错误. gcc -o main main.c -static -L. –lmylib Linux环境下gcc静态编译/usr/bin/ld: cannot fi ...

  3. /usr/bin/ld.bfd.real: cannot find -lGL /usr/bin/ld.bfd.real: cannot find -lX11

    /usr/bin/ld.bfd.real: cannot find -lGL /usr/bin/ld.bfd.real: cannot find -lX11 根据网上大多数的说法,以及官网的介绍.截至 ...

  4. 编译错误:/usr/bin/ld: cannot find -lz

    编译时出现错误/usr/bin/ld: cannot find -lz,安装zlib和zlib-devel yum install zlib yum install zlib-devel

  5. linux /usr/bin/ld cannot find 解决

    问题: 在linux环境编译应用程式或lib的source code时常常会出现如下的错误讯息: /usr/bin/ld: cannot find -lxxx 这些讯息会随着编译不同类型的source ...

  6. linux /usr/bin/ld: cannot find -lxxx

    在linux环境编译应用程式或lib的source code时出现如下错误:/usr/bin/ld: cannot find -lxxx 这些讯息会随着编译不同类型的source code 而有不同的 ...

  7. /usr/bin/ld: cannot find -lz

    同事在一台机器上新安装的CentOS,我拷贝一个项目在上面编译,老是报如下错误: “/usr/bin/ld: cannot find -lz” 说明:libz.so是有的,在/lib64下面 我设置环 ...

  8. 关于usr/bin/ld: cannot find -lxxx问题总结

    /usr/bin/ld: cannot find -lxxx问题总结   linux下编译应用程序常常会出现如下错误:     /usr/bin/ld: cannot find -lxxx       ...

  9. CentOS6.5安装readline时报错:/usr/bin/ld : cannot find -lncurses

    CentOS6.5安装readline时报错:/usr/bin/ld : cannot find -lncurses 解决方法: 安装ncurses-devel,输入命令: #yum install ...

随机推荐

  1. 应用安全 - 软件漏洞 - 泛微OA漏洞汇总

    SQL注入 前台SQL注入 用户名:admin' or password like 'c4ca4238a0b923820dcc509a6f75849b' and 'a'='a 密码: 1 验证页面参数 ...

  2. 13 (H5*) JS第三天 数组、函数

    目录 1:数组的定义和创建方式 2:数组的总结 3:for循环遍历数组 4:数组的案例 5:冒泡排序 6:函数的定义 7:函数的参数 8:函数的返回值 复习 <script> /* * * ...

  3. 在使用spring中的ContextConfiguration、test注解时出现的错误

    错误: 在使用测试注解时出现ContextConfiguration注解和test注解无法正常导包使用的编译异常,如图: 解决办法: 将pom.xml文件中以下依赖管理 中的<scope> ...

  4. How to increase timeout for your ASP.NET Application ?

    How to increase timeout for your ASP.NET Application ? 原文链接:https://www.techcartnow.com/increase-tim ...

  5. Java集合概括总结及集合选用

    Collection 1. List ArrayList :Object数组,是一个数组队列,相当于动态数组.它由数组实现,随机访问效率高,随机插入.随机删除效率低. LinkedList :是一个双 ...

  6. jsp常问面试题集

    1.Servlet总结 在Java Web程序中,Servlet主要负责接收用户请求 HttpServletRequest,在doGet(),doPost()中做相应的处理,并将回应HttpServl ...

  7. Elasticsearch7.X 入门学习第七课笔记-----Mapping多字段与自定义Analyzer

    原文:Elasticsearch7.X 入门学习第七课笔记-----Mapping多字段与自定义Analyzer 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处 ...

  8. 系统盘(c盘)空间清理方法总结(转)

      我们一般会把系统安装在C盘,但是使用一段时间后会发现C盘的空间越来越少.尤其我们做开发的,会在电脑中装上很多软件的.比如我的机器上C盘空间15G,平时安装软件时只要可以选择我都会把它装到其他盘的, ...

  9. AppDomain (转)

    AppDomain是CLR的运行单元,它可以加载Assembly.创建对象以及执行程序.AppDomain是CLR实现代码隔离的基本机制. 每一个AppDomain可以单独运行.停止:每个AppDom ...

  10. 读书笔记二、pandas之DataFrame

    注:DataFrame的构造方法与Series类似,只不过同时接受一条一维数据源,每一条都会成为单独的一列. 注意,返回的Series拥有原DataFrame 相同的索引,且其name属性也已经被相应 ...