c高级编程4 LD_DEBUG
[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的更多相关文章
- 读《C#高级编程》第1章问题
读<C#高级编程>第1章 .Net机构体系笔记 网红的话:爸爸说我将来会是一个牛逼的程序员,因为我有一个梦,虽然脑壳笨但是做事情很能坚持. 本章主要是了解.Net的结构,都是一些概念,并没 ...
- MVC高级编程+C#高级编程
本人今年的目标是学习MVC高级编程和C#高级编程,把自己的基础打的扎实,本文中值是一个开到,定期会在上面记录学习的技术点和心得就,加油吧!!!!!
- 《C#高级编程》读书笔记
<C#高级编程>读书笔记 C#类型的取值范围 名称 CTS类型 说明 范围 sbyte System.SByte 8位有符号的整数 -128~127(−27−27~27−127−1) sh ...
- jquery插件开发继承了jQuery高级编程思路
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈 ...
- jQuery高级编程
jquery高级编程1.jquery入门2.Javascript基础3.jQuery核心技术 3.1 jQuery脚本的结构 3.2 非侵扰事JavaScript 3.3 jQuery框架的结构 3. ...
- (十三) [终篇] 一起学 Unix 环境高级编程 (APUE) 之 网络 IPC:套接字
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- multiple definition of `err_sys' 《UNIX环境高级编程》
本文地址:http://www.cnblogs.com/yhLinux/p/4079930.html 问题描述: [点击此处直接看解决方案] 在练习<UNIX环境高级编程>APUE程序清单 ...
- Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程
Shell高级编程视频教程-跟着老男孩一步步学习Shell高级编程实战视频教程 教程简介: 本教程共71节,主要介绍了shell的相关知识教程,如shell编程需要的基础知识储备.shell脚本概念介 ...
- unix环境高级编程基础知识之第二篇(3)
看了unix环境高级编程第三章,把代码也都自己敲了一遍,另主要讲解了一些IO函数,read/write/fseek/fcntl:这里主要是c函数,比较容易,看多了就熟悉了.对fcntl函数讲解比较到位 ...
随机推荐
- WCF扩展
WCF 可扩展性 WCF 提供了许多扩展点供开发人员自定义运行时行为. WCF 在 Channel Layer 之上还提供了一个高级运行时,主要是针对应用程序开发人员.在 WCF 文档中,它常被称为服 ...
- iOS数据存储之对象归档
iOS数据存储之对象归档 对象归档 对象归档是iOS中数据持久化的一种方式. 归档是指另一种形式的序列化,但它是任何对象都可以实现的更常规的类型.使用对模型对象进行归档的技术可以轻松将复杂的对象写入文 ...
- 二分+叉积判断方向 poj 2318 2398
// 题意:问你每个区域有多少个点 // 思路:数据小可以直接暴力 // 也可以二分区间 #include <cstdio> #include <cstring> #inclu ...
- Designing Evolvable Web API with ASP.NET 随便读,随便记 “The Internet,the World Wide Web,and HTTP”
1982年,诞生了 Internet; 1989年,诞生了World Wide Web . "World Wide Web"的构造为主要由 三部分构成: resources 资源 ...
- YARN应用场景、原理与资源调度
1.Hadoop YARN产生背景 源于MapReduce1.0 运维成本 如果采用“一个框架一个集群”的模式,则可能需要多个管理员管理这些集群,进而增加运维成本,而共享模式通常需要少数管理员即可完成 ...
- Getting Started(Google Cloud Storage Client Library)
在运行下面的步骤之前,请确保: 1.你的项目已经激活了Google Cloud Storage和App Engine,包括已经创建了至少一个Cloud Storage bucket. 2.你已经下载了 ...
- Makefile中用宏定义进行条件编译
在源代码里面如果这样是定义的: #ifdef MACRONAME //可选代码 #endif 那在makefile里面 gcc -D MACRONAME=MACRODEF 或者 gcc ...
- Android实例-屏幕操持常亮(XE8+小米2)
相关资料: http://www.bubuko.com/infodetail-163304.html 结果: 1.打开权限Wake lock为True. 第三方单元: unit Android.JNI ...
- 利用red5搭建一个简单的流媒体直播系统
http://blog.sina.com.cn/s/blog_51396f890102exmz.html 一.red5安装.设置. 这个过程就不多说了,参见http://blog.csdn.net/l ...
- 【转】强大的vim配置文件,让编程更随意
原文地址:http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配置主 ...