转自http://i-pogo.blogspot.com/2010/01/usrbinld-cannot-find-lxxx.html
問題:
在linux環境編譯應用程式或lib的source code時常常會出現如下的錯誤訊息:
/usr/bin/ld: cannot find -lxxx
這些訊息會隨著編譯不同類型的source code 而有不同的結果出來如:
/usr/bin/ld: cannot find -lc
/usr/bin/ld: cannot find -lltdl
/usr/bin/ld: cannot find -lXtst
其中xxx即表示函式庫文件名稱,如上例的:libc.so、libltdl.so、libXtst.so。
其命名規則是:lib+庫名(即xxx)+.so。
會發生這樣的原因有以下三種情形:
1 系統沒有安裝相對應的lib
2 相對應的lib版本不對
3 lib(.so檔)的symbolic link 不正確,沒有連結到正確的函式庫文件(.so)
相关推荐
Linux编译静态链接出现:/usr/bin/ld: cannot find -lc. 将libc.a拷贝到usr/lib/中,问题得以解决。
### DOS技巧100例详解 #### 一、概述 在计算机发展早期,DOS(Disk Operating System)作为主流操作系统之一,在...尽管现代操作系统已经非常普及,但了解这些基础知识仍然对于理解和解决计算机系统的问题非常有帮助。
总之,解决“Linux -lrt缺失”和“-lpthread缺失”的问题,需要确保在编译过程中正确地链接到实时库和线程库,并且这些库是针对目标架构(arm或arm64)的。在处理这类问题时,理解库的使用和编译过程中的链接选项是...
1,这是一个压缩文件,解压后名称应为libcuda.so,是...2,这个文件用于不具备cuda显卡的电脑在ubuntu平台配置gpgpu-sim时,绕过因为找不到lcuda而无法顺利编译的错误,将其放在/usr/local/cuda/lib64下即可解决问题。
在Android开发中,由于开发者通常在x86或x86_64架构的机器上工作,而Android设备大多使用ARM架构,因此需要交叉编译工具链来解决这个问题。"aarch64"表示这个工具链是为64位ARM(AArch64)处理器设计的,这是现代...
#### Cannot modify a const object (不能修改常量对象) **描述**: 尝试修改一个声明为`const`的变量或对象。 **解决方法**: 确保不修改常量对象,或者取消`const`属性后再进行修改。 #### Case outside of ...
MySQL数据库在运行过程中可能会遇到各种错误,其中"Cannot find or open table x/x from the internal data dictionary of InnoDB"是一个常见的问题。这个问题通常涉及到InnoDB存储引擎,它在尝试访问一个表时,无法...
C语言编译器关于gnu/stubs-32.h文件的解决方法 在64位Linux系统下编译C语言程序时,可能会出现gnu/stubs-32.h文件不存在的错误,主要是因为缺少32位兼容包的原因。今天,我们就来探讨解决这个问题的方法。 首先,...
`NumParts: Cannot find word ~ in dictionary`提示字典中找不到某个词。需要检查字典是否包含了这个词,如果没有,需要添加;如果已经添加,可能需要重新排序。 5. **HLEd -l '*' -d prondict -i train.monophone...
- `export CFLAGS="-L/usr/lib/aarch64-linux-gnu/pkgconfig"` - `export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/lib/aarch64-linux-gnu/pkgconfig"` 这些环境变量的设置,对于交叉编译环境来说是非常...
### 错误四:`/usr/bin/ld: cannot find -lz` #### 解决方案: 该错误提示ld链接器未能找到zlib库,可通过安装`lib32z1-dev`来解决。 ```bash sudo apt-get install lib32z1-dev ``` 此命令将安装32位版本的zlib库...
### TC错误代码完整集录:理解与解决C语言编译问题 #### 概览 在进行C语言编程时,遇到编译错误是家常便饭。TurboC V2.0作为一款经典的编译器,提供了详尽的错误报告机制,帮助开发者定位并解决问题。本文将基于...
cannot find -l 例如:/usr/bin/ld: 找不到 -lavdevice 这是在 Ubuntu 20.04 LTS 中使用“g++”时的编译问题,这是在构建时遇到的 我是如何解决的: 首先对 "nameOfTheLibrary" 进行包搜索: apt-cache search 例如...
通过`ls -l`命令,可以看到文件`tshref`的权限为`-rwxr-xr-x`,这表明它是一个可执行文件。但即使文件存在并有执行权限,仍然可能出现上述错误。 进一步排查,我们使用`uname -a`命令来查看系统的架构信息。结果...
文档《单片机技术初步实践》提供了有关Codewarrior在编译过程中可能遇到的C语言语法错误及其解决方法。以下是针对文档中列出的具体错误及其解决方法的详细说明。 1. C1000错误:非法的标识符列表出现在声明中 描述...
- 如果在执行`./configure`时遇到`config.status: error: cannot find input file: 'include/ap_config_auto.h.in'`,这可能是由于之前移动Apache源码目录时遗漏了某些文件。确保所有文件都已正确移动,并重试`./...
本文将详细解析Redis的安装过程,并针对出现的错误提供解决方案。 首先,我们从Redis官方网站下载稳定版的Redis源码包,例如这里选择了6.0.1版本。下载完成后,通过以下步骤进行安装: 1. 安装必要的编译工具:`...
没有--enable-avcodec运行VLC转码会出现"cannot find video decoder"的错误。 (三) 进行RTSP To TS转码: vlc tcp://172.17.0.199:7799 --sout '#duplicate{dst="transcode{venc=x264{profile=baseline},vcodec=h...
为了解决这类方程,姚锋平集中研究了在适当的系数条件下的一般型变系数椭圆方程的局部L∞梯度估计。 关键词中的L∞表示要估计的是梯度的上确界,即在局部区域上梯度的最大值。局部估计意味着这种估计是针对方程解的...