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函数讲解比较到位 ...
随机推荐
- IOS block 记录
1.需要使用 @property(....,copy) 而不是其他的 2.self.request=[ASIHTTPRequest requestWithURL:[NSURL URLWithStrin ...
- c++ 概念及学习/c++ concept&learning(二)
上篇内容讲述了整个语言的发展[为什么会产生编程语言],以及学习C++所需要掌握的内容.这节开始认识第一部分最基本的内容:C++的内建类型,也就是基本类型. 在这些知识之前留一个问题:为什么基本所有语言 ...
- Java NIO 缓冲区学习笔记
Buffer其实就是是一个容器对象,它包含一些要写入或者刚读出的数据.在NIO中加入Buffer对象,体现了新库与原I/O的一个重要区别.在面向流的I/O中,您将数据直接写入或者将数据直接读到Stre ...
- 设置结点的ID为固定ID
https://www.java.net//forum/topic/jxta/jxta-community-forum/how-initialize-pse-jxse-27 ————————————— ...
- Codeforces Round #353 (Div. 2) D. Tree Construction (二分,stl_set)
题目链接:http://codeforces.com/problemset/problem/675/D 给你一个如题的二叉树,让你求出每个节点的父节点是多少. 用set来存储每个数,遍历到a[i]的时 ...
- UVaLive 7374 Racing Gems (DP,LIS)
题意:以辆赛车可以从x轴上任意点出发,他的水平速度允许他向每向上移动v个单位,就能向左或向右移动v/r个单位(也就是它的辐射范围是个等腰三角形) 现在赛车从x轴出发,问它在到达终点前能吃到的最多钻石. ...
- 在Linux下部署activemq
今天的任务就是在一台新的服务器上继续部署activemq.其实都蛮简单的.首先先下载包:115U盘下载 2 上传到linux下的某个文件夹下.解压缩 tar -zxvf apache-activemq ...
- windows下实现微秒级的延时
windowsintegeriostream汇编嵌入式任务 最近正在做一个嵌入式系统,是基于windows ce的,外接硬件的时序要微秒级的延时.1.微秒级的延时肯定不能基于消息(SetTimer函数 ...
- CSS 边框的宽度
边框的宽度 您可以通过 border-width 属性为边框指定宽度. 为边框指定宽度有两种方法:可以指定长度值,比如 2px 或 0.1em:或者使用 3 个关键字之一,它们分别是 thin .me ...
- struts2的action的知识点和利用action向页面注入值的操作
1. Action的顺序,会先搜索指定名字下的包的action,如果找不到会去搜索默认路径下的包下的action. 2. 如果没有给action设置值,那么action会有一些默认 ...