由于之前用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之
#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
相关推荐
Linux编译静态链接出现:/usr/bin/ld: cannot find -lc. 将libc.a拷贝到usr/lib/中,问题得以解决。
总之,解决"/usr/bin/ld: cannot find -lThreads"的关键在于确保CMakeLists.txt正确配置了线程库的链接。这通常包括使用`find_package(Threads REQUIRED)`、设置编译标志或直接使用`target_link_libraries`与`-...
### 解决 "cannot find -lxxx" 的问题 在Linux环境下进行软件开发或构建时,可能会遇到链接器报错 `cannot find -lxxx` 的情况。这类错误通常出现在使用 `gcc` 或其他编译工具进行链接操作的过程中,当链接器无法...
ubuntu18.04 , cuda10.0 编译darknet出现/usr/bin/ld: cannot find -lcuda cannot find -lcuda 意思是编译时未找到libcuda库。 首先查看Makefile这中cuda路径是否正确,即下面第四行lib路径 ifeq ($(GPU), 1) COMMON...
1,这是一个压缩文件,解压后名称应为libcuda.so,是...2,这个文件用于不具备cuda显卡的电脑在ubuntu平台配置gpgpu-sim时,绕过因为找不到lcuda而无法顺利编译的错误,将其放在/usr/local/cuda/lib64下即可解决问题。
-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 查看版本出现: 原因是:没有那个文件或目录,找了很久发现需要...
bash:/usr/local/bin/rar:/lib/ld-linux.so.2:badELFinterpreter:Nosuchfileordirectory ``` - 这意味着系统未能正确加载程序所需的动态链接器(ld-linux.so.2)。 2. **共享库错误**: - 在尝试运行某些依赖于...
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/...
./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...
安装完qt之后,构建项目就会出现:/usr/bin/ld: 找不到 -lGL 因为缺少了libGL环境,此时更新libGL环境 执行此命令sudo apt-get install libgl1-mesa-dev 执行完命令会提示错误,说依赖关系被破坏 因为是源有问题,...
以上所述是小编给大家介绍的解决-BASH: /HOME/JAVA/JDK1.8.0_221/BIN/JAVA: 权限不够问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持! ...
/usr/bin/ld: warning: libpgtypes.so.1, needed by /usr/lib/libecpg.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libpq.so.3, needed by /usr/lib/libecpg.so, not found (try using ...
描述中提到,这个压缩包应该在Linux系统下解压,并放置在“/usr/local/arm”路径下。这是为了遵循Linux的文件系统层次结构标准(FHS),将软件安装在非系统关键路径中,以便用户自定义软件的管理和更新,同时不会...
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_...
ss/usr/bin/ld: warning: libopencv_core3.so.3.3, needed by /usr/local/lib/lib 搜寻了好久大致有以下几种解决方案: 1.把该文件所在的目录放到linux动态库链接文件中: sudo gedit /etc/ld.so.conf 输入路径...
在这个具体的例子中,我们解决了gedit在Ubuntu 16.04上无法启动的问题,通过更新LD_LIBRARY_PATH使得gedit使用了正确版本的libgobject-2.0.so.0库,从而确保了程序的正常运行。这个经验对于理解和处理类似的问题具有...
主要介绍了bash: /usr/bin/autocrorder: /usr/bin/python^M: bad interpreter: No such file or directory,需要的朋友可以参考下
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,配置环境变量,编辑文件...
该文件可以用于解决启动verdi后的报错,verdi/platform/LINUXAMD64/bin/ Novas: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory 注意适用于64...
这里简单介绍下两种安装docker-compose的方式,第一种方式相对简单,但是由于网络问题,常常安装不上,并且经常会断开,第二种方式略微麻烦,但是安装过程比较稳定 方法一: # curl -L ...