参考   ldconfig 命令 - 云+社区 - 腾讯云

目录

1、简介

2、命令格式

3、参数说明

4、常用示例

5、注意事项


1、简介

ldconfig 命令的用途主要是在默认搜寻目录 /lib 和 /usr/lib 以及动态库配置文件 /etc/ld.so.conf 内所列的目录下,搜索出可共享的动态链接库(格式如 lib*.so*),进而创建出动态链接器(ld.so 或 ld-linux.so)所需的缓存文件。缓存文件默认为 /etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表,为了让动态链接库为系统所共享,需运行动态链接库的管理命令 ldconfig 更新动态链接库的缓存文件,此执行程序存放在 /sbin 目录下。ldconfig 通常在系统启动时运行,而当用户安装了一个新的动态链接库时,就需要手工运行这个命令。

2、命令格式

/sbin/ldconfig [ -nNvXV ] [ -f conf ] [ -C cache ] [ -r root ] directory ...
/sbin/ldconfig -l [ -v ] library ...
/sbin/ldconfig -p

3、参数说明

-v, --verbose用此选项时,ldconfig 将显示正在扫描的目录及搜索到的动态链接库,还有它所创建的链接的名字-nldconfig仅扫描命令行指定的目录,不扫描默认目录(/lib、/usr/lib),也不扫描配置文件 /etc/ld.so.conf 所列的目录。-Nldconfig 不重建缓存文件(/etc/ld.so.cache),若未用 -X 选项,ldconfig 照常更新文件的链接-Xldconfig 不更新文件的链接,若未用 -N 选项,则缓存文件照常重建-f <conf >指定动态链接库的配置文件为 <conf > ,系统默认为 /etc/ld.so.conf-C <cache>指定生成的缓存文件为 <cache>,系统默认的是 /etc/ld.so.cache,此文件存放已排好序的可共享的动态链接库的列表-r <root>改变应用程序的根目录为 <root>(是调用 chroot 函数实现的)。选择此项时,系统默认的配置文件 /etc/ld.so.conf,实际对应的为 <root>/etc/ld.so.conf。如用 -r /usr/zzz时,打开配置文件 /etc/ld.so.conf 时,实际打开的是 /usr/zzz/etc/ld.so.conf 文件。用此选项,可以大大增加动态链接库管理的灵活性-l通常情况下,ldconfig 搜索动态链接库时将自动建立动态链接库的链接,选择此项时,将进入专家模式,需要手工设置链接,一般用户不用此项-p, --print-cacheldconfig 打印出当前缓存文件保存的所有共享库的名字-c FORMAT 或 --format=FORMAT:此选项用于指定缓存文件所使用的格式,共有三种:old(老格式),new(新格式)和compat(兼容格式,此为默认格式)。-V打印出 ldconfig 的版本信息-?, --help, --usage这三个选项作用相同,都是让ldconfig打印出其帮助信息

4、常用示例

(1)显示 ldconfig 帮助信息。

ldconfig -?

(2)显示 ldconfig 版本信息。

ldconfig -V

(3)刷新动态链接库缓存文件 /etc/ld.so.cache。

sudo ldconfig

5、注意事项

(1)往 /lib 和 /usr/lib 里面加动态链接库,是不用修改 /etc/ld.so.conf的,但是完了之后要调一下 ldconfig,不然这个 library 会找不到。

(2)想往上面两个目录以外加东西的时候,一定要修改 /etc/ld.so.conf,然后再调用 ldconfig,不然也会找不到。

比如安装了一个 mysql 到 /usr/local/mysql,mysql 有一大堆 library在 /usr/local/mysql/lib 下面,这时就需要在 /etc/ld.so.conf 里面加一行 /usr/local/mysql/lib,保存过后执行 ldconfig 更新一下动态链接库缓存 /etc/ld.so.cache,新的 library 才能在程序运行时被找到。

(3)如果想在 /lib 和 /usr/lib 这两个目录以外放 lib,并且又不想在 /etc/ld.so.conf 中加动态链接库的目录(或者是没有权限加)。那么可以 export 一个全局变量 LD_LIBRARY_PATH,然后运行程序的时候就会去这个目录中找 library。一般来讲这只是一种临时的解决方案,在没有权限或临时需要的时候使用。

(4)ldconfig 更新动态链接库的缓存文件只与程序运行时有关,跟编译时没有关系。编译时需要加 -L 就得加,不要混淆了。

(5)总之,就是不管做了什么关于 library 的变动后,最好都 ldconfig 一下,不然会出现一些意想不到的结果。不会花太多的时间,但是会省很多的事。

ldconfig 命令相关推荐

  1. ldconfig命令详解,linux动态链接库

    动态链接库管理命令 为了让动态链接库为系统所共享,还需运行动态链接库的管理命令--ldconfig.此执行程序存放在/sbin目录下. ldconfig命令的用途,主要是在默认搜寻目录(/lib和/u ...

  2. 【Linux】一步一步学Linux——ldconfig命令(255)

    00. 目录 文章目录 00. 目录 01. 命令概述 02. 命令格式 03. 常用选项 04. 参考示例 05. 附录 01. 命令概述 ldconfig命令的用途主要是在默认搜寻目录/lib和/ ...

  3. 使用ldconfig命令将/usr/local/lib加入到默认库

    在安装各种软件的时候,我们常常需要使用ldconfig命令调用系统链接库,这样往往会比较麻烦,而且每次需要使用的时候,都需要调用一次,那么有没有更好的方法将/usr/local/lib加入到默认的系统 ...

  4. Linux 命令(71)—— ldconfig 命令

    1.简介 ldconfig 命令用于在默认搜寻目录 /lib 和 /usr/lib 以及动态库配置文件 /etc/ld.so.conf 内所列的目录下,搜索出可共享的动态链接库(格式如 lib*.so ...

  5. ldconfig命令简介

    为了让动态链接库为系统所共享,还需运行动态链接库的管理命令--ldconfig.此执行程序存放在/sbin目录下. ldconfig命令的用途,主要是在默认搜寻目录(/lib和/usr/lib)以及动 ...

  6. ldconfig命令和/etc/ld.so.conf文件详解

    ldconfig命令的解释是: ldconfig creates the necessary links and cache to the most recent shared libraries f ...

  7. ldconfig命令的作用

    ldconfig是一个动态链接库管理命令 为了让动态链接库为系统所共享,还需运行动态链接库的管理命令--ldconfig ldconfig  命令的用途,主要是在默认搜寻目录(/lib和/usr/li ...

  8. ldconfig 命令用法

    ldconfig 是一个动态链接库管理命令,为了让动态链接库为系统所共享,还需运行动态链接库的管理命令--ldconfig. ldconfig 命令的用途,主要是在默认搜寻目录(/lib 和 /usr ...

  9. linux命令之添加系统搜索动态库目录-ldconfig

    ldconifg,/etc/ld.so.conf,/etc/ld.so.cache三个的关系 一般情况下我们可以将程序需要搜索动态库的路径配置到ld_library_path这个环境变量中,不过很多系 ...

最新文章

  1. Spark的transformation和action算子简介
  2. 中国的数据科学家阶层正在形成
  3. C++标准库:使用std_list作为链表
  4. linux(gentoo)安装配置conky
  5. 独家解读 etcd 3.4版本 |云原生生态周报 Vol. 18
  6. usb2.0、usb3.0、usb3.1、type-c 接口含义与区别
  7. 共享平台上租了辆路虎 逾期归还 结果悲剧了...
  8. c语言推箱子源代码及注释,求大神 解析推箱子源代码 要详细
  9. linux怎么测试一个脚本,一个Linux中用于监控的简易shell脚本
  10. docker 命令2
  11. AAC Explicit or Implicit SBR PS issue
  12. excel图表交互联动_Excel图表联动的三种方法
  13. 数学建模——指派问题
  14. ANSYS 静力 分析实例 悬臂梁
  15. Matlab将底色改为白色
  16. 360度全景标定方法_基于IMU辅助的360度全景视图多相机标定方法与流程
  17. 12306多线程抢票
  18. python 信号.同步 day07
  19. matlab中s_cplot,matlab系统模型建立和动态特性研究分析实验.docx
  20. 深圳软件测试培训:Pytest+Appium+Allure 做 UI 自动化的那些事

热门文章

  1. 怎么把m4v转换成mp4格式?
  2. 领扣LintCode算法问题答案-82. 落单的数
  3. 文本特征抽取的向量空间模型(VSM)和TF/IDF方法
  4. TensorFlow Lite 指导
  5. Web3.0中国峰会|专访华太资本创始人Fil WORLD中文社区早期布道者吴忠武
  6. [转]即时通信-socket
  7. antd Select组件 和 Dropdown组件 踩坑·记
  8. 手机赚钱软件整套出售,类似赚钱宝、米赚、学生赚
  9. JavaScript截取数组常用方法
  10. Your branch and 'origin/master' have diverged