ldd命令 ubuntu_ldd命令

ldd命令 ubuntu_ldd命令1.在制作自己的发行版时经常需要判断某条命令需要哪些共享库文件的支持,以确保指定的命令在独立的系统内可以可靠的运行;在Linux环境下通过ldd命令即可实现,在终端下执行:ldd/bin/ls//ldd命令通常使用”-v”或”–verbose”选项来显示所依赖的动态连接库的尽可能的详细信息。即可得到/bin/ls命令的相关共享库文件列表:libtermcap.so.2=>/lib/…

大家好,又见面了,我是你们的朋友全栈君。

1.在制作自己的发行版时经常需要判断某条命令需要哪些共享库文件的支持,以确保指定的命令在独立的系统内可以可靠的运行;

在Linux环境下通过ldd命令即可实现,在终端下执行:

ldd /bin/ls //ldd命令通常使用”-v”或”–verbose”选项来显示所依赖的动态连接库的尽可能的详细信息。

即可得到/bin/ls命令的相关共享库文件列表:

libtermcap.so.2 => /lib/libtermcap.so.2 (0x4001c000) libc.so.6 => /lib/libc.so.6 (0x40020000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

注意:在 ldd 命令打印的结果中,“=>”左边的表示该程序需要连接的共享库之 so 名称,右边表示由 Linux 的共享库系统找到的对应的共享库在文件系统中的具体位置。默认情况下,/etc/ld.so.conf 文件中包含有默认的共享库搜索路径。

2.龙芯电脑中更新了库文件时,经常会引起某些软件无法使用,可以通过ldd命令来检查软件需要那些共享库的支持,如:以前在安装apt-get install devscripts软件时安装更新了很多库,结果导致OpenOffice无法使用,可以使用命令:

#ldd /opt/openoffice.org2.0/program/soffice.bin

查看其依赖的共享库文件。

知识点:

1、如果使用 ldd 命令时没有找到对应的共享库文件和其具体位置,可能是两种情况引起的:

共享库没有安装在该系统中;

共享库保存在 /etc/ld.so.conf 文件列出的搜索路径之外的位置。

通常情况下,许多开放源代码的程序或函数库都会默认将自己安装到 /usr/local 目录下的相应位置(如:/usr/local/bin 或 /usr/local/lib),以便与系统自身的程序或函数库相区别。而许多 Linux 系统的 /etc/ld.so.conf 文件中默认又不包含 /usr/local/lib。因此,往往会出现已经安装了共享库,但是却无法找到共享库的情况。具体解决办法如下:

检查 /etc/ld.so.conf 文件,如果其中缺少 /usr/local/lib 目录,就添加进去;注意:在修改了/etc/ld.so.conf 文件或者在系统中安装了新的函数库之后,需要运行一个命令:ldconfig ,该命令用来刷新系统的共享库缓存,即 /etc/ld.so.cache 文件。为了减少共享库系统的库搜索时间,共享库系统维护了一个共享库 so 名称的缓存文件/etc/ld.so.cache。因此,在安装新的共享库之后,一定要运行 ldconfig 刷新该缓存。

2、使用nm命令也可以获取库函数的信息;nm命令可以列出一个函数库文件中的符号表,它对静态的库函数和共享的库函数都能起作用。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/130937.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月13日 上午9:00
下一篇 2022年6月13日 上午9:00


相关推荐

  • java工作流activity_activity 工作流学习(一)

    java工作流activity_activity 工作流学习(一)启动流程实例什么是流程实例?根据一个流程定义具体的一次执行过程就是一个流程实例,一个流程定义对应多个流程实例(一对多关系)为了演示:在流程图中指定办理人是谁,现在是写死的,表示只能张三能提交请假申请。后面会讲解如何动态指定。//根据流程定义的Id启动一个流程实例(操作ACT_RU_EXECUTION、ACT_RU_TASK、ACT_HI_PROCINST、ACT_HI_ACTINST、ACT_HI…

    2022年6月9日
    58
  • 腾讯多业务全面接入DeepSeek R1-0528

    腾讯多业务全面接入DeepSeek R1-0528

    2026年3月12日
    2
  • python升级版本命令-python升级命令

    python升级版本命令-python升级命令广告关闭 2017 年 12 月 云 社区对外发布 从最开始的技术博客到现在拥有多个社区产品 未来 我们一起乘风破浪 创造无限可能 如果您细心对比过 jsonpythonsd 和 xmlpythonsdk 的文档 您会发现并不是一个简单的增量更新 xmlpythonsdk 在架构 可用性和安全性上有了非常大的提升 而且在易用性 健壮性和传输性能上也做了非常大的改进 如果您想要升级到 xm

    2026年3月20日
    2
  • CreateFile函数

    CreateFile函数在 include include 的头文件里 HANDLECreate LPCTSTRlpFil 要打开的文件名 nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp DWORDdwDesir 文件的操作属性 nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp DWORDdwShare 文件共享属性 nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp LPSECU

    2025年9月25日
    4
  • 她不在

    她不在她不在

    2022年4月23日
    74
  • vue 调用子组件方法失败_Vue子组件调用父组件的方法及常见问题「建议收藏」

    vue 调用子组件方法失败_Vue子组件调用父组件的方法及常见问题「建议收藏」1.子组件内不允许直接修改父组件传过来的参数。错误实例:子组件代码直接对data参数进行修改,则会提示错误。vue.runtime.esm.js?2b0e:619[Vuewarn]:Avoidmutatingapropdirectlysincethevaluewillbeoverwrittenwhenevertheparentcomponentre-render…

    2022年10月2日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号