首页 > 编程知识 正文

lsattr命令详解,jstat命令详解

时间:2023-05-05 02:29:40 阅读:111962 作者:792

“ldd”命令以ldd1 .语法2 .为例进行说明。 背景知识1. ldd不是可执行程序,shell脚本2.ldd的本质是通过LD-Linux.so(elf动态库加载程序)实现的。 3 .以3. ld-linux.so查找共享库的顺序3.1**cat为例,**3.2 **注意: **引用源

液晶屏

ldd命令用于打印程序或库文件所依赖的共享库的列表。 Glibc安装的库之一是ld-linux.so.X,其中x是数字,名称因平台而异。

1 .语法usage 3360 ldd [ option ].file.-- helpprintthishelpandexit-- versionprintversioninformationandexit-d,--------datdattid --function-relocsprocessdataandfunctionrelocations-u, --unusedprintunuser-- verbose print all information2.示例: fan@carey:/$ldd/MTDJr/cat Linux-vdso.so.1 (0x 00007 ff5cefb 000 ) libc libc.so.6 (0x 00007 f 5412 e 04000 )/lib64/LD-Linux-x86-64.so.2 (0x 00007 f 5412 fff 000 ) )最后没有“=”的是当前平台上的第一个LD-Linux-Linux 1不是实际存在的库文件

知识1. ldd不是可执行程序,shell脚本fan @ Carey :~$ ldd/MTD Jr/lddnotadynamicexecutable2. ldd实质上是LD-Linux.so(elf动态ld-linux.so.2及其64位版/lib64/ld-linux-x86-64.so.2看起来像共享库文件,但实际上是独立运行的。 他们的功能是负责动态加载。 通过读取可执行文件的头信息,确定需要哪个库文件以及需要加载哪个库文件。 加载完成后,通过修改可执行文件中的相关地址指针,它将动态链接到加载的库文件,以便程序可以运行。

可以在64位系统上直接运行ld-linux-x86-64.so.2模块,例如,fan @ Carey :/$/lib 64/LD-Linux-x86-64.so.2-- cat Linux-vdso.so.1 (0x 0007 ff 94299 libc.so.6 (0x 00007 fa2D1 CCC 000 )/lib 64/LD-Linux-x86-64.so.2 (0x 00000000 等效于的cat Linux-vdso.so.1 (0x 00007 fff3e 115000 ) libc.so.6=/lib/x86 _ 64-Linux-GNU/libc.so.6 )0x 0007 例如,/lib/LD-Linux.so.2-- list/MTD Jr/cat是ldd /mtdjr/cat 3. ld-linux.so搜索共享库的顺序3.13http://www.sininn 等效于的cat Linux-vdso.so.1 (0x 00007 ff F5 cefb 000 ) libc.so.6=/lib/x86 _ 64-Linux-GNU/libc.so.6 )0x 007 ld-linux.so按照一定的顺序找到libc.so.6,告诉Linux.so,需要libc.so.6这个库文件,所以ld-linux.so的位置写在程序中(GCC是专业的) 编译时,ld-linux.so查找共享库的顺序为: (1) ld-linux.so.6设置为gcc的spec文件;2 ) gcc --print-search-dirs打印的爸爸(3)通过设置在LIBRARY_PATH环境变量中设置的路径或在编译的命令行中指定的-l/usr/local/lib(4) mtdjrutils的ld中设置的默认搜索路径顺序,来设置mtdjrrutils )5)二进制搜索路径的顺序由PATH环境变量设置。 编译/usr/local/mtdjr高于/usr/mtdjr(6)的头文件的常规搜索路径顺序类似于库的搜索顺序。 如果典型的/usr/local/include高于/usr/include,则ld-linux.so搜索共享库的顺序: (1) ld-linux.so.6在可执行的目标文件中指定在local上安装后,可以使用/usr/local/lib(3) LD_LIBRARY_PATH环境变量中设置的路径)4)/etc/ld.so.conf (或/usr/path 3.2 以cat为例:其原理是,如果通过设置一系列环境变量来完成的环境变量不为空,例如LD_TRACE_LOADED_OBJECTS、LD_WARN和LD_com 示例:

fan @ Carey :/usr/share/mo editor $ export LD _ trace _ loaded _ objects=1fan @ Carey :/usr/share/moeditod lib selinux.so.1 (0x 00007 FEC 92031000 ) libc.so.6=/lib/x86 lib pcre2-8. so.0=/lib/x86 _ 65374; 65374; linu GNU LD-Linux-x86-64.so.2 (0x 00007 FEC 92087000 ) libpthread.so.0=/lib/x86 _ 64-Linux-GNU/libpthread

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。