Linux提示 /usr/bin/ld:cannot find-lxxx 系列解决方法

2023-10-31

一般把xx.so文件复制到/usr/lib

这篇文章主要介绍了Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决方法,本文以Ubuntu为例给出了一个解决例子,其它linux系统也适用,需要的朋友可以参考下

在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)

解决方法:

(1)先判断在/usr/lib下的相对应的函式库文件(.so)的symbolic link是否正确,若不正确改成正确的连结目标即可解决问题。

(2)若不是symbolic link的问题引起,而是系统缺少相对应的lib安装lib即可解决。

(3)如何安装缺少的lib:

  以上面三个错误讯息为例:

  复制代码代码如下:

  错误1缺少libc的LIB

  错误2缺少libltdl的LIB

  错误3缺少libXtst的LIB

以Ubuntu为例:

  先搜寻相对应的LIB再进行安装的作业如:

  复制代码代码如下:apt-cache search libc-dev

 apt-cache search libltdl-dev

 apt-cache search libXtst-dev

 

实例:

  在进行输入法gcin的Source Code的编译时出现以下的错误讯息:

  复制代码代码如下:/usr/bin/ld: cannot find -lXtst

  经检查后发现是:

lib(.so档)的symbolic link不正确

  解决方法如下:

    复制代码代码如下:

cd /usr/lib

ln -s libXtst.so.6 libXtst.so

  如果在/usr/lib的目录下找不到libXtst.so档,那么就表示系统没有安装libXtst的函式库。

  解法如下:

  复制代码代码如下:

apt-get install libxtst-dev

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux提示 /usr/bin/ld:cannot find-lxxx 系列解决方法 的相关文章

随机推荐

  • 简搭(jabdp)快速入门(一)

    一 文件夹说明 本应用包为绿色免安装版本 只需要将本jabdp文件夹复制至系统英文名称目录下即可 mysql目录为默认集成的数据库目录 webapps目录为应用程序所在目录 其中设计器包含ae与iDesigner工程 项目平台包含iPlat
  • JAVA 内部类 inner class

    内部类 在一个类的内部定义的类称为内部类 类的内部 第一 与属性或方法 同级 内部类 这个类与外部类的每个对象是一对一的关系 Person与Birthday 静态内部类 这个类与外部类是1对1的关系 每个对象共享这个内部类对象 Hero和C
  • 编程实用工具大全(二)(前后端皆可用,不来看看?)

    个人主页 个人主页 系列专栏 精品推荐 由于之前编程实用工具大全深受大家喜欢 所以出了第二期 对于没有看过第一期的小伙伴 可以点击这个链接 编程实用工具大全 一 目录 1 零代码工具箱 专为前端打造 1 SVG波浪背景生成器 2 在线生成
  • Activity启动流程概述

    总结 Activity的启动过程 我们可以从Context的startActivity说起 其实现是ContextImpl的startActivity 内部调用startActivityForResult 然后内部会通过Instrument
  • Mathpix公式识别OCR软件使用教程

    最近 发现一款公式识别OCR软件 配合Mathtype 公式编辑器 非常好用 省去很多时间 所以就写一篇文章介绍Mathpix的使用方法 1 打开Mathpix软件后 可以鼠标单击下图中小电脑图标进行截图 也可以使用快捷键Ctrl Alt
  • IntelliJ IDEA基于maven构建的web项目找不到jar包

    手把手教你搭建基于Maven的SSM框架 附源代码 SSM框架 详细整合教程 GitHub源码地址 SSM整合框架 基于maven构建的springMVC项目 下载好jar包import后 运行提示ClassNotFoundExceptio
  • 数仓/数据开发-零基础入坑(小白学习路径)

    这段时间各大公司的春招陆续开始了 但是也有很多同学还在因为刚刚入坑或者还在纠结 对学习路径比较迷茫 这也是去年的我 所以这边总结一下 一个面向面试的学习路径 后面也会补充上全面的学习路径 面向面试就是掌握到基本能应付暑期实习面试的基本技能和
  • 论文笔记之CSPNet

    本文解决的是减少推理计算的问题 本文收录于CVPR2019 论文地址 https arxiv org pdf 1911 11929 pdf 1 摘要 目前最先进的能够在计算机视觉任务上取得非常好的结果的方法往往很大程度上依赖于昂贵的计算资源
  • Window Server IIS日志导入到SQL Server查看

    配置ODBC log日志可以导出到提供ODBC访问接口的数据库查看 控制面板 ODBC 添加DSN gt SQL Server 起个名称 随意命名 下一步 选择数据库 下一步 默认就行 点完成 测试数据源 点击确定 点击应用 确定 打开lo
  • Error:Could not create the Java Virtual Machine. Error:A Fatal exception has occurred错误解决

    问题情况 出现以上情况 可以通过以下方式进行解决 1 判断机子是否安装了Java环境 确定自己已经设置环境变量 如JAVA HOME CLASSPATH PATH 2 有些程序会有内存设置 有些程序内存设置过大时 超过虚拟机的范围会报错 3
  • 剑指offer——剪绳子

    题目描述 给你一根长度为n的绳子 请把绳子剪成整数长的m段 m n都是整数 n gt 1并且m gt 1 每段绳子的长度记为k 0 k 1 k m 请问k 0 xk 1 x xk m 可能的最大乘积是多少 例如 当绳子的长度是8时 我们把它
  • Backtrader量化&回测5——交易情况跟踪&生成策略每日交易报告

    这一部分的API可以参考官网 https www backtrader com docu strategy Backtrader的策略中有四个常用的函数 notify order order 订单状态变化时会触发这个函数 notify tr
  • get请求传参 数组

    假设现在有数组arr 1 2 axios中如果直接使用数组传参 会出现参数中数组变成arr 1 arr 2的情况 实际上后端需要的是arr 1 arr 2的效果 这个时候可以使用axios里面的qs 导入 import qs from qs
  • 数据中心如何助力大数据、区块链、人工智能结合应用,推动数字经济发展?

    同属新基建重点点名发展的技术高地 大数据 区块链 人工智能之间有联系吗 数据中心如何承担技术底座的作用 以促进这些新兴技术的结合发展和应用 继而推动数字经济的发展 用人体来比喻 我们人类的各个器官感知世间万物的一切 大数据 经过人体经络 区
  • 2019年国赛高教杯数学建模E题薄利多销分析解题全过程文档及程序

    2019年国赛高教杯数学建模 E题 薄利多销分析 原题再现 薄利多销 是通过降低单位商品的利润来增加销售数量 从而使商家获得更多盈利的一种扩大销售的策略 对于需求富有弹性的商品来说 当该商品的价格下降时 如果需求量 从而销售量 增加的幅度大
  • 解决 Error querying database. Cause: java.sql.SQLException: sql injection violation....

    解决 Error querying database Cause java sql SQLException sql injection violation 最近在开发的时候老板的需求就是将模糊搜索和PageHelper 结合起来将数据显示
  • Vuex状态管理

    1 vuex是什么 Vuex 是一个专为 Vue js 应用程序开发的状态管理模式 集中式存储管理应用的所有组件的状态 简单的状态管理模式 state 驱动应用的数据源 view 以声明方式将 state 映射到视图 actions 响应在
  • 电脑安装两个jdk版本无法切换 同时安装JDK8和JDK16 配置JAVA_HOME为JDK8但 java 和 javac 版本都是16

    JDK8是目前最稳定使用最多的版本 大厂开发都使用JDK8 JDK16是目前最新版 问题描述 同一台电脑同时安装了JDK8和JDK16 先安装了JDK16后安装的JDK8 设置JAVA HOME指定给JDK8版本 但是java 和 java
  • QT 获取系统版本号并且识别出对应的Windows系统信息,包括windows11

    在QT中使用QSysInfo类来获取系统版本号 可以使用QSysInfo windowsVersion 函数来识别Windows系统信息 可能的返回值包括QSysInfo WV 32s QSysInfo WV 95 QSysInfo WV
  • Linux提示 /usr/bin/ld:cannot find-lxxx 系列解决方法

    一般把xx so文件复制到 usr lib 这篇文章主要介绍了Linux系统中提示 usr bin ld cannot find lxxx错误的通用解决方法 本文以Ubuntu为例给出了一个解决例子 其它linux系统也适用 需要的朋友可以