[root@monitor ~]# LD_DEBUG=help ls
Valid options for the LD_DEBUG environment variable are: libs display library search paths
reloc display relocation processing
files display progress for input file
symbols display symbol table processing
bindings display information about symbol binding
versions display version dependencies
all all previous options combined
statistics display relocation statistics
unused determined unused DSOs
help display this help message and exit To direct the debugging output into a file instead of standard output
a filename can be specified using the LD_DEBUG_OUTPUT environment variable.
[root@monitor ~]# LD_DEBUG=bindings /root/test
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_res' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_IO_file_close' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `rpc_createerr' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__key_gendes_LOCAL' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__ctype32_tolower' [GLIBC_2.2]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `loc1' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `svc_pollfd' [GLIBC_2.2]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_IO_funlockfile' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__malloc_initialize_hook' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `argp_program_version' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__tzname' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__after_morecore_hook' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__progname' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `obstack_exit_failure' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__check_rhosts_file' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `program_invocation_short_name' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_IO_stdout_' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `optopt' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `malloc' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_environ' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_IO_stderr_' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__key_encryptsession_pk_LOCAL' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__ctype_tolower' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__malloc_hook' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /root/test []: normal symbol `_IO_stdin_used'
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__progname_full' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `obstack_alloc_failed_handler' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__fpu_control' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `mallwatch' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `loc2' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__realloc_hook' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/ld-linux.so. []: normal symbol `__libc_stack_end' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `program_invocation_name' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `argp_program_version_hook' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__curbrk' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `stdout' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `svc_max_pollfd' [GLIBC_2.2]
: binding file /lib/libc.so. [] to /lib/ld-linux.so. []: normal symbol `_rtld_global_ro' [GLIBC_PRIVATE]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_nl_domain_bindings' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `stderr' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__ctype32_b' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/ld-linux.so. []: normal symbol `__libc_enable_secure' [GLIBC_PRIVATE]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_res_hconf' [GLIBC_2.2]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `argp_program_bug_address' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `h_errlist' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `optind' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/ld-linux.so. []: normal symbol `_dl_argv' [GLIBC_PRIVATE]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `svc_fdset' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_IO_stdin_' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `re_syntax_options' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__rcmd_errstr' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__daylight' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `error_print_progname' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__ctype32_toupper' [GLIBC_2.2]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__ctype_b' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__ctype_toupper' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__morecore' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `getdate_err' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_nl_msg_cat_cntr' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `stdin' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__environ' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `svcauthdes_stats' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__memalign_hook' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__free_hook' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `error_message_count' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `free' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/ld-linux.so. []: normal symbol `_rtld_global' [GLIBC_PRIVATE]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__timezone' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `__key_decryptsession_pk_LOCAL' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `error_one_per_line' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `opterr' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `optarg' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `argp_err_exit_status' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_IO_2_1_stdin_' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_IO_2_1_stdout_' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_IO_2_1_stderr_' [GLIBC_2.1]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `calloc' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `realloc' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `malloc' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/ld-linux.so. []: normal symbol `___tls_get_addr' [GLIBC_2.3]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `memalign' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `free' [GLIBC_2.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `_Unwind_Find_FDE' [GCC_3.0]
: binding file /lib/libc.so. [] to /lib/libc.so. []: normal symbol `memmem' [GLIBC_2.0]
: binding file /lib/ld-linux.so. [] to /lib/ld-linux.so. []: normal symbol `_r_debug' [GLIBC_2.0]
: binding file /lib/ld-linux.so. [] to /lib/libc.so. []: normal symbol `free' [GLIBC_2.0]
: binding file /lib/ld-linux.so. [] to /lib/libc.so. []: normal symbol `__libc_memalign' [GLIBC_2.0]
: binding file /lib/ld-linux.so. [] to /lib/libc.so. []: normal symbol `malloc' [GLIBC_2.0]
: binding file /lib/ld-linux.so. [] to /lib/libc.so. []: normal symbol `calloc' [GLIBC_2.0]
: binding file /lib/ld-linux.so. [] to /lib/libc.so. []: normal symbol `realloc' [GLIBC_2.0]
: binding file /lib/ld-linux.so. [] to /lib/ld-linux.so. []: normal symbol `___tls_get_addr' [GLIBC_2.3]
: binding file /lib/ld-linux.so. [] to /lib/libc.so. []: normal symbol `free' [GLIBC_2.0]
:
: calling init: /lib/libc.so.
:
: binding file /root/test [] to /lib/libc.so. []: normal symbol `__libc_start_main' [GLIBC_2.0]
:
: initialize program: /root/test
:
:
: transferring control: /root/test
:
: binding file /root/test [] to /lib/libc.so. []: normal symbol `sbrk' [GLIBC_2.0]
: binding file /root/test [] to /lib/libc.so. []: normal symbol `brk' [GLIBC_2.0]
: binding file /root/test [] to /lib/libc.so. []: normal symbol `printf' [GLIBC_2.0] 0x9c22000
0x9c22004
(nil)
0x9c22004
0x9c22004
Segmentation fault
[root@monitor ~]# LD_DEBUG=libs /root/test                         //显示库如何加载的
: find library=libc.so. []; searching
: search cache=/etc/ld.so.cache
: trying file=/lib/libc.so.
:
:
: calling init: /lib/libc.so.
:
:
: initialize program: /root/test
:
:
: transferring control: /root/test
:
0x9a88000
0x9a88004
(nil)
0x9a88004
0x9a88004
Segmentation fault

c高级编程4 LD_DEBUG的更多相关文章

  1. 读《C#高级编程》第1章问题

    读<C#高级编程>第1章 .Net机构体系笔记 网红的话:爸爸说我将来会是一个牛逼的程序员,因为我有一个梦,虽然脑壳笨但是做事情很能坚持. 本章主要是了解.Net的结构,都是一些概念,并没 ...

  2. MVC高级编程+C#高级编程

    本人今年的目标是学习MVC高级编程和C#高级编程,把自己的基础打的扎实,本文中值是一个开到,定期会在上面记录学习的技术点和心得就,加油吧!!!!!

  3. 《C#高级编程》读书笔记

    <C#高级编程>读书笔记 C#类型的取值范围 名称 CTS类型 说明 范围 sbyte System.SByte 8位有符号的整数 -128~127(−27−27~27−127−1) sh ...

  4. jquery插件开发继承了jQuery高级编程思路

    要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈 ...

  5. jQuery高级编程

    jquery高级编程1.jquery入门2.Javascript基础3.jQuery核心技术 3.1 jQuery脚本的结构 3.2 非侵扰事JavaScript 3.3 jQuery框架的结构 3. ...

  6. (十三) [终篇] 一起学 Unix 环境高级编程 (APUE) 之 网络 IPC:套接字

    . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...

  7. multiple definition of `err_sys' 《UNIX环境高级编程》

    本文地址:http://www.cnblogs.com/yhLinux/p/4079930.html 问题描述: [点击此处直接看解决方案] 在练习<UNIX环境高级编程>APUE程序清单 ...

  8. Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程

    Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程 教程简介: 本教程共71节,主要介绍了shell的相关知识教程,如shell编程需要的基础知识储备.shell脚本概念介 ...

  9. unix环境高级编程基础知识之第二篇(3)

    看了unix环境高级编程第三章,把代码也都自己敲了一遍,另主要讲解了一些IO函数,read/write/fseek/fcntl:这里主要是c函数,比较容易,看多了就熟悉了.对fcntl函数讲解比较到位 ...

随机推荐

  1. SQL知识累积

    详细介绍select的文章,展示原始数据.SQL.查询结果,以及在不同数据库下SQL应该如何写. https://en.wikipedia.org/wiki/Select_(SQL) 目录如下: Co ...

  2. MFC字体与文本输出

    字体 成员函数 1.CFont( ); 构造一个CFont对象.此对象在使用之前应该先使用CreateFont.CreateFontIndirect.CreatePointFont或CreatePoi ...

  3. Ruby多字节字符的设计

    Perl.Python的多字节字符处理方式是UCS(Universal Code Set),Ruby的多字节字符处理方式是CSI(Code Set Independent).UCS的做法是,不管你读取 ...

  4. 中断——中断处理程序的进入与退出 (基于3.16-rc4)

    上一篇博文我们分析了中断描述符表的中断门初始化过程,并且在interrupt数组中初始化过程中,可以看到每个中断处理程序都会跳入common_interrupt中.下面我们分析下common_inte ...

  5. java工程师的标准

    1.技术广度方面至少要精通多门开源技术吧,研究过struts\spring\hibernate等的源码. 2.项目经验方面从头到尾跟过几个大项目,头是指需求阶段,包括需求调研.尾是指上线交付之后,包括 ...

  6. linux - 怎么自动填写有交互的shell脚本 - SegmentFault

    linux - 怎么自动填写有交互的shell脚本 - SegmentFault TCL/Expect交互式自动化测试概要 - - ITeye技术网站 expect是一种基于TCL,能与交互式程序进行 ...

  7. HiveContext VS SQLContext

    There are two ways to create context in Spark SQL: SqlContext:scala> import org.apache.spark.sql. ...

  8. (转)UML实践----用例图、类图、对象图、顺序图、协作图、状态图、活动图、组件图、配置图

    面向对象的问题的处理的关键是建模问题.建模可以把在复杂世界的许多重要的细节给抽象出.许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML ...

  9. UVaLive 6625 Diagrams & Tableaux (状压DP 或者 DFS暴力)

    题意:给一个的格子图,有 n 行单元格,每行有a[i]个格子,要求往格子中填1~m的数字,要求每个数字大于等于左边的数字,大于上边的数字,问有多少种填充方法. 析:感觉像个DP,但是不会啊...就想暴 ...

  10. 【JDBC】预编译SQL与防注入式攻击

    在JDBC编程中,常用Statement.PreparedStatement 和 CallableStatement三种方式来执行查询语句,其中 Statement 用于通用查询, PreparedS ...