jquery教程

推荐列表 站点导航

当前位置:首页 > jquery > jquery教程 >

ldd命令学习

来源:网络整理  作者:  发布时间:2020-12-21 00:16
ldd用来打印可执行档依赖的共享库文件。它是glibc的一部分,由Roland McGrath和Ulrich Drepper维护......
lrwxrwxrwx 1 root root 9 2009-09-05 22:54 /lib/ld-linux.so.2 -> ld-2.9.so
1、 --verify
libselinux.so.1 => /lib/libselinux.so.1 (0xb7f79000)
4、默认路径/lib和/usr/lib,但如果添加了-z nodeflib,则跳过。

-u, --unused            print unused direct dependencies
Copyright (C) 2008 Free Software Foundation, Inc.
-v, --verbose -> LD_VERBOSE=yes
-u, --unused -> LD_DEBUG="unused"
linux-gate.so.1 =>  (0xb7fac000)
Usage: ldd [OPTION]... FILE...
$ ls -l /lib/ld-linux.so.*
$ which ldd
$ ldd --help
$ ls  /usr/
3、/etc/ld.so.cache文件中的路径,但如果可执行程序在连接时候添加了-z nodeflib选项,则跳过。
libacl.so.1 => /lib/libacl.so.1 (0xb8014000)
2、剖析共享程序库)
3、LD_BIND_NOW

ldd可 以获得的共享库文件,其实是通过读取ldconfig命令组建起来的文件(/etc/ld.so.cache)。
$ export LD_TRACE_LOADED_OBJECTS=1
它是glibc的一部分,由Roland McGrath和Ulrich Drepper维护:
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb8037000)
$ file /usr/bin/ldd
ldd (GNU libc) 2.9
6、 LD_DEBUG

$ /lib/ld-linux.so.2  --list /bin/ls
<>.

默认的共享库文件搜索/lib 优先于/usr/lib,而且也只有这个2个目录。如果想要加入其他路径,则需要通过ldconfig命令配置相关文件。
libselinux.so.1 => /lib/libselinux.so.1 (0xb801d000)
linux-gate.so.1 =>  (0xb8050000)

更为详细的内容:
一般 ld-linux.so会按照以下顺序搜索共享库:
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb7f93000)

更多的环境变量:
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7eb1000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7e98000)
For bug reporting instructions, please see:
-r, --function-relocs ->LD_WARN和LD_BIND_NOW=yes
/usr/bin/ldd
-d, --data-relocs       process data relocations
如:LD_TRACE_LOADED_OBJECTS
5、LD_VERBOSE
3、ldd命令的原理与使用方法( /af67700a80a01e1594ca6b29.html)

撤 销该环境变量,ls即又可以恢复正常使用:
1、DT_RPATH或DT_RUNPATH段
$ unset LD_TRACE_LOADED_OBJECTS
-d, --data-relocs -> LD_WARN=yes
$ ldd --version
2、man ldconfig()
libattr.so.1 => /lib/libattr.so.1 (0xb7dea000)

LD_TRACE_LOADED_OBJECTS为必要环境变量,其他视具体情 况。

ldd用来打印可执行档依赖的共享库文件。
/lib/ld-linux.so.2 (0xb8051000)
1、man ldd()
Written by Roland McGrath and Ulrich Drepper.

libattr.so.1 => /lib/libattr.so.1 (0xb7e8e000)

ldd本身不是一个程序,而仅是一个shell脚本:
-r, --function-relocs   process data and function relocations
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7df4000)
1、LD_TRACE_LOADED_OBJECTS

ldd默认开启的环境变量是:LD_TRACE_LOADED_OBJECTS=1

还有一 些额外的环境变量可以参看man ld.so。

--help              print this help and exit
只 要设置其值非空即可。
--version           print version information and exit
/usr/bin/ldd: Bourne-Again shell script text executable

This is free software; see the source for copying conditions.  There is NO
libacl.so.1 => /lib/libacl.so.1 (0xb7f70000)
其他的变量(和值)分别对应 一些选项:
bin  games  include  lib  lib32  lib64  local  sbin  share  src  X11R6

参考文章:
-v, --verbose           print all information

ldd命令其实是依靠设置一些环境变量而实现的(也就是说ldd的作用只是设置一些环境变量的值)
3、man ld.so()

刚编译后的文件可能是:/lib/ld.so。如果是 libc5则是/lib/ld-linux.so.1, 而glibc2应该是/lib/ld-linux.so.2。

更为详细的命令选项(或者参看man、info):
我们可 以看到以上等同于ldd ls。/lib/ld-linux.so.2还有其他一些选项:
1、Linux 动态库剖析()
$ ls /usr
我们可以从以上的内容中(ls /usr中)发现:/lib/ld-linux.so.2 (0xb7fad000)。
2、 LD_WARN
3、--inhibit-rpath LIST

2、--library-path PATH
4、LD_LIBRARY_VERSION
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7e94000)
/lib/ld-linux.so.2 (0xb7fad000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7df0000)

但 是ldd命令的本质是执行了:/lib/ld-linux.so.*
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7e0d000)
2、环境变量 LD_LIBRARY_PATH

相关热词: 命令

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/jq/jc/6401.shtml

相关文章
最新文章
PHP识别相片是否是颠倒的 PHP识别相片是否是颠倒的

时间:2020-12-28

python编程有哪些ide python编程有哪些ide

时间:2020-12-28

python开发工程师是做什么 python开发工程师是做什么

时间:2020-12-28

php构造函数的作用 php构造函数的作用

时间:2020-12-28

php怎么跟数据库连接 php怎么跟数据库连接

时间:2020-12-28

php实现顺序线性表 php实现顺序线性表

时间:2020-12-28

Python多重继承中的菱形继 Python多重继承中的菱形继

时间:2020-12-28

php中break的作用 php中break的作用

时间:2020-12-28

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

ldd命令学习

2020-12-21 编辑:

lrwxrwxrwx 1 root root 9 2009-09-05 22:54 /lib/ld-linux.so.2 -> ld-2.9.so
1、 --verify
libselinux.so.1 => /lib/libselinux.so.1 (0xb7f79000)
4、默认路径/lib和/usr/lib,但如果添加了-z nodeflib,则跳过。

-u, --unused            print unused direct dependencies
Copyright (C) 2008 Free Software Foundation, Inc.
-v, --verbose -> LD_VERBOSE=yes
-u, --unused -> LD_DEBUG="unused"
linux-gate.so.1 =>  (0xb7fac000)
Usage: ldd [OPTION]... FILE...
$ ls -l /lib/ld-linux.so.*
$ which ldd
$ ldd --help
$ ls  /usr/
3、/etc/ld.so.cache文件中的路径,但如果可执行程序在连接时候添加了-z nodeflib选项,则跳过。
libacl.so.1 => /lib/libacl.so.1 (0xb8014000)
2、剖析共享程序库)
3、LD_BIND_NOW

ldd可 以获得的共享库文件,其实是通过读取ldconfig命令组建起来的文件(/etc/ld.so.cache)。
$ export LD_TRACE_LOADED_OBJECTS=1
它是glibc的一部分,由Roland McGrath和Ulrich Drepper维护:
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb8037000)
$ file /usr/bin/ldd
ldd (GNU libc) 2.9
6、 LD_DEBUG

$ /lib/ld-linux.so.2  --list /bin/ls
<>.

默认的共享库文件搜索/lib 优先于/usr/lib,而且也只有这个2个目录。如果想要加入其他路径,则需要通过ldconfig命令配置相关文件。
libselinux.so.1 => /lib/libselinux.so.1 (0xb801d000)
linux-gate.so.1 =>  (0xb8050000)

更为详细的内容:
一般 ld-linux.so会按照以下顺序搜索共享库:
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb7f93000)

更多的环境变量:
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7eb1000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7e98000)
For bug reporting instructions, please see:
-r, --function-relocs ->LD_WARN和LD_BIND_NOW=yes
/usr/bin/ldd
-d, --data-relocs       process data relocations
如:LD_TRACE_LOADED_OBJECTS
5、LD_VERBOSE
3、ldd命令的原理与使用方法( /af67700a80a01e1594ca6b29.html)

撤 销该环境变量,ls即又可以恢复正常使用:
1、DT_RPATH或DT_RUNPATH段
$ unset LD_TRACE_LOADED_OBJECTS
-d, --data-relocs -> LD_WARN=yes
$ ldd --version
2、man ldconfig()
libattr.so.1 => /lib/libattr.so.1 (0xb7dea000)

LD_TRACE_LOADED_OBJECTS为必要环境变量,其他视具体情 况。

ldd用来打印可执行档依赖的共享库文件。
/lib/ld-linux.so.2 (0xb8051000)
1、man ldd()
Written by Roland McGrath and Ulrich Drepper.

libattr.so.1 => /lib/libattr.so.1 (0xb7e8e000)

ldd本身不是一个程序,而仅是一个shell脚本:
-r, --function-relocs   process data and function relocations
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7df4000)
1、LD_TRACE_LOADED_OBJECTS

ldd默认开启的环境变量是:LD_TRACE_LOADED_OBJECTS=1

还有一 些额外的环境变量可以参看man ld.so。

--help              print this help and exit
只 要设置其值非空即可。
--version           print version information and exit
/usr/bin/ldd: Bourne-Again shell script text executable

This is free software; see the source for copying conditions.  There is NO
libacl.so.1 => /lib/libacl.so.1 (0xb7f70000)
其他的变量(和值)分别对应 一些选项:
bin  games  include  lib  lib32  lib64  local  sbin  share  src  X11R6

参考文章:
-v, --verbose           print all information

ldd命令其实是依靠设置一些环境变量而实现的(也就是说ldd的作用只是设置一些环境变量的值)
3、man ld.so()

刚编译后的文件可能是:/lib/ld.so。如果是 libc5则是/lib/ld-linux.so.1, 而glibc2应该是/lib/ld-linux.so.2。

更为详细的命令选项(或者参看man、info):
我们可 以看到以上等同于ldd ls。/lib/ld-linux.so.2还有其他一些选项:
1、Linux 动态库剖析()
$ ls /usr
我们可以从以上的内容中(ls /usr中)发现:/lib/ld-linux.so.2 (0xb7fad000)。
2、 LD_WARN
3、--inhibit-rpath LIST

2、--library-path PATH
4、LD_LIBRARY_VERSION
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7e94000)
/lib/ld-linux.so.2 (0xb7fad000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7df0000)

但 是ldd命令的本质是执行了:/lib/ld-linux.so.*
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7e0d000)
2、环境变量 LD_LIBRARY_PATH

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/jq/jc/6401.shtml

相关文章

风云图片

推荐阅读

返回jquery教程频道首页