linux下打印堆栈方法 锦集

 
1、编译时一定要加上参数(-g -rdynamic).
 
 
不加-rdynamic的效果就是:
 
./a.out [0x8048469]
./a.out [0x80484fa]
./a.out [0x8048512]
/lib/libc.so.6(__libc_start_main+0xdc) [0x4b863f2c]
./a.out [0x80483b1]
 
加-rdynamic的效果就是:
 
./a.out(print_strace+0x35) [0x8048639]
./a.out(fun+0xb) [0x80486ca]
./a.out(main+0x16) [0x80486e2]
/lib/libc.so.6(__libc_start_main+0xdc) [0x4b863f2c]
./a.out [0x8048581]
 
呵呵,函数名都打出来了,这是我们想要的.

你可能感兴趣的:(linux下打印堆栈方法 锦集)