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命令可以列出一个函数库文件中的符号表,它对静态的库函数和共享的库函数都能起作用。

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • powerdesigner创建数据库模型(概念模型举例)

    1.启动PowerDesigner(我用的PowerDesigner16.7破解版)选择新建概念模型进行数据库设计的E-R模型辅助设计2.概念模型的设计实体:选择实体图形,在“图纸”点击划出实体来,双击为其命名,选择Attributes添加其所有属性。注意所有的name都可以用中文标示,以好理解;但是code必须用英文标示,以方便库的操作处理(PowerDesigner转化数据库.sql文件,所有的表名称,属性等都采用code)。为每个属性命名,并选择相应的数据类型,PowerDesigner

  • pcanywhere远程控制的步骤_windows10远程桌面端口修改

    pcanywhere远程控制的步骤_windows10远程桌面端口修改  PcAnywhere远程连接默认端口是5631[数据端口]、5632[状态端口],实际发现其实防火墙打开5631[数据端口]端口就可以自由访问。要改变Pcanywhere数据端口[5631]要去编辑系统注册表,找到以下键值:开始->运行->regedit:HKEY_LOCAL_MACHINE\SOFTWARE\Symantec\pcAny…

  • mysql错误码2058_MySQL 1045

    mysql错误码2058_MySQL 1045配置新连接报错:错误号码2058,分析是mysql密码加密方法变了。解决方法:windows下cmd登录mysql-uroot-p登录你的mysql数据库,然后执行这条SQL:ALTERUSER’root’@’localhost’IDENTIFIEDWITHmysql_native_passwordBY’password’;(注意分号)#password是你…

  • Android UI布局优化之ViewStub[通俗易懂]

    Android UI布局优化之ViewStub[通俗易懂]尊重原创,转载请注明出处:http://blog.csdn.net/a740169405/article/details/50351013前言:在设计模式的单利模式中,懒汉式和饿汉式是其中两种。一种是在类被加载的时候就完成单例对象的初始化,一种是在需要使用该单例的时候才初始化。在android的视图设计中,同样需要使用的这样的设计模式。这样的视图加载起来需要耗费很多的时间。在这几…

  • 各种门平面图画法_关于CAD各种门怎么画平面图就行?[通俗易懂]

    各种门平面图画法_关于CAD各种门怎么画平面图就行?[通俗易懂]回答:CAD怎么画钢琴平面图CAD怎么画出钢琴的平面图呢?很简单的,有需要的朋友动手试试吧。1、启动中望CAD软件,执行“矩形”命令(rec),绘制1575mmX230mm和1575X50mm的直角矩形。2、执行矩形命令和移动命令(M),绘制出如图所示图形。3、执行移动命令,按[F8]键打开“正交”模式,捕捉上一步绘制的矩形中点,将二部分直角矩形图形组合在一起。4、执行“矩形”命令(rec),绘制…

  • java开发规范(个人理解)

    java开发规范(个人理解)

发表回复

您的电子邮箱地址不会被公开。

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