/usr/bin/ld: cannot find -lgcc_s 问题解决小记
由于之前用wubi装的ubuntu并且只给了它10G的硬盘空间,随着学习的深入这种配备已经无法满足我的需求了。今天索性把ubuntu从windows上“卸载了”,划了20G -_-的空余空间准备安装ubuntu双系统。双系统的安装过程很顺利,但接下来Qtopia的编译就不是很顺利了。我根据前面编译Qtopia时做的记录文档对源文件还有系统变量进行了若干修改,但是实际编译的过程却跳出了我之前没有遇到的问题。
/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文件,编辑如下:
# 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弹出提示链接已损坏。于是一切豁然开朗:文件未能链接到正常的库文件。接下来在终端下输入:
locate libgcc_s.so.1
以寻找库文件实际路径(注:我电脑里面同时有4.5版的编译器,该版链接的也是这一个库文件)
弹出:
/lib/i386-linux-gnu/libgcc_s.so.1
于是重定向3.4版编译的的libgcc_s.so链接
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之
1 #include <stdio.h>
2 int main(int agrc, char **argv)
3 {
4 printf("Hello World!");
5 return 0;
6 }
编译:gcc -o hello hello.c
无错误提示。
运行:./hello
得到我们熟悉的“Hello World!”,呼,问题终于解决了!!!
马上切换到qtopia目录下编译,过程很顺利,历经半个小时,终于再次见到我们熟悉的Qtopia画面,欣慰!!^_^
(由于无聊,我查看了/usr/lib/gcc/i486-linux-gnu/3.4.6/目录下所有的链接文件,发现libstdc++.so这个链接也损坏了,重定向为:/usr/lib/i386-linux-gnu/libstdc++.so.6:ln -sf /usr/lib/i386-linux-gnu/libstdc++.so.6 /usr/lib/gcc/i486-linux-gnu/3.4.6/libstdc++.so)
By cassvin
2011-07-24
分享到:
相关推荐
Linux编译静态链接出现:/usr/bin/ld: cannot find -lc. 将libc.a拷贝到usr/lib/中,问题得以解决。
/usr/bin/ld:cannot find-lThreads的解决办法 这是因为你cmakelists.txt中引入thread库没有写对,我来告诉你正确的写法
ubuntu18.04 , cuda10.0 编译darknet出现/usr/bin/ld: cannot find -lcuda cannot find -lcuda 意思是编译时未找到libcuda库。 首先查看Makefile这中cuda路径是否正确,即下面第四行lib路径 ifeq ($(GPU), 1) COMMON...
-bash: /usr/local/jdk/jdk1.8.0_181/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory 安装完后 java -version 查看版本出现: 原因是:没有那个文件或目录,找了很久发现需要...
1,这是一个压缩文件,解压后名称应为libcuda.so,是...2,这个文件用于不具备cuda显卡的电脑在ubuntu平台配置gpgpu-sim时,绕过因为找不到lcuda而无法顺利编译的错误,将其放在/usr/local/cuda/lib64下即可解决问题。
usr/bin/ld: cannot find -lltdl /usr/bin/ld: cannot find -lmysqlclient httpd: Syntax error on line 57 of /etc/httpd/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/...
安装完qt之后,构建项目就会出现:/usr/bin/ld: 找不到 -lGL 因为缺少了libGL环境,此时更新libGL环境 执行此命令sudo apt-get install libgl1-mesa-dev 执行完命令会提示错误,说依赖关系被破坏 因为是源有问题,...
./bin/mysqld: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./bin/mysqld) ./bin/mysqld: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./bin/mysqld) libstdc...
以上所述是小编给大家介绍的解决-BASH: /HOME/JAVA/JDK1.8.0_221/BIN/JAVA: 权限不够问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持! ...
出现以下报错,替换/usr/local/include/openssl里面的文件之后编译成功。add_assoc_name_entry’:/data/src/php-5.6.23/ext/openssl/openssl.c:664: warning: ‘ASN1_STRING_data’ is deprecated (declared at /usr...
PATH : /usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_...
CC2540 IO CODE
主要介绍了bash: /usr/bin/autocrorder: /usr/bin/python^M: bad interpreter: No such file or directory,需要的朋友可以参考下
操作系统:Ubuntu 16.04 问题描述: 在终端启动gedit命令或者vscode命令报错:gedit: symbol lookup error: /home/...因此解决的思路是从系统中找到正确的依赖库。 查找系统中存在的libgobject库: locate libgob
jdk-11.0.4_linux-x64_bin.tar 直接使用,安装步骤: 1,下载完成将文件移动 /usr/local/ 并解压 tar -xvf openjdk-11+28_linux-x64_bin.tar.gz 2,重命名解压文件 mv jdk-11/ jdk11/ 3,配置环境变量,编辑文件...
编译 ./configure --prefix=/usr/...59:21: fatal error: zipconf.h: No such file or directory 解决: cp /usr/local/lib/libzip/include/zipconf.h /usr/local/include/zipconf.h 1 安装成功: 复制配置文件: cp ...
[root@localhost TMP]# /usr/bin/xdg-open: line 402: htmlview: command not found Failed to load core: /opt/Qt5.2.1/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libCore.so: Cannot load library /opt/Qt...
编译ROS工程的过程中,因为安装了anaconda导致系统库的路径被覆盖掉,因而报错的时候 runtime library [libssl.so....bash: export: `/home/rw/anaconda3/bin:/home/rw/anaconda3/condabin:/home/rw/.local/bin:/usr/lo
ss/usr/bin/ld: warning: libopencv_core3.so.3.3, needed by /usr/local/lib/lib 搜寻了好久大致有以下几种解决方案: 1.把该文件所在的目录放到linux动态库链接文件中: sudo gedit /etc/ld.so.conf 输入路径...
解决No module named '_bz2' 将_bz2.cpython-37m-x86_64-linux-gnu.so放到/usr/local/bin/python3.7/lib-dynload/