下面这段,初看一定会脑大,实际原因非常明确,所以遇到时要先观察,不一定是头大的问题。gdb -p 1461GNU gdb 6.6Copyright (C) 2006 Free Software Foundation, Inc.GDB is free software, covered by the GNU General Public License, and you arewelcome to change it and/or distribute copies of it under certain conditions.Type "show copying" to see the conditions.There is absolutely no warranty for GDB. Type "show warranty" for details.This GDB was configured as "x86_64-suse-linux".Attaching to process 14614Reading symbols from /home/zhangsan/bin/test...done.Using host libthread_db library "/lib64/libthread_db.so.1".Error while mapping shared library sections:./libtest.so: No such file or directory.Reading symbols from /lib64/libdl.so.2...done.Loaded symbols for /lib64/libdl.so.2Reading symbols from /lib64/libz.so.1...done.Loaded symbols for /lib64/libz.so.1Reading symbols from /usr/lib64/libaio.so.1...done.Loaded symbols for /usr/lib64/libaio.so.1Symbol file not found for ./libtest.soReading symbols from /lib64/libc.so.6...done.Loaded symbols for /lib64/libc.so.6Reading symbols from /lib64/ld-linux-x86-64.so.2...done.Loaded symbols for /lib64/ld-linux-x86-64.so.2Reading symbols from /usr/lib64/libstdc++.so.6...done.Loaded symbols for /usr/lib64/libstdc++.so.6Reading symbols from /lib64/libm.so.6...done.Loaded symbols for /lib64/libm.so.6Reading symbols from /lib64/libgcc_s.so.1...done.Loaded symbols for /lib64/libgcc_s.so.1Reading symbols from /lib64/libpthread.so.0...done.[Thread debugging using libthread_db enabled][New Thread 47461298698832 (LWP 14614)][New Thread 1082132800 (LWP 14618)]Symbol file not found for ./libapr-1.so.0Reading symbols from /lib64/libcrypt.so.1...done.Loaded symbols for /lib64/libcrypt.so.1Reading symbols from /lib64/libnss_files.so.2...done.Loaded symbols for /lib64/libnss_files.so.20x00002b2a709a9ec1 in free () from /lib64/libc.so.6(gdb) t 2[Switching to thread 2 (Thread 1082132800 (LWP 14618))]#0 0x00002b2a709cf476 in poll () from /lib64/libc.so.6(gdb) bt#0 0x00002b2a709cf476 in poll () from /lib64/libc.so.6#1 0x00002b2a70d6cf05 in ?? ()#2 0x000000000053ab48 in ?? ()#3 0x0000000040800100 in ?? ()#4 0x0000000040800120 in ?? ()#5 0x00002b2a7081553e in ?? ()#6 0x0000271040800110 in ?? ()#7 0x0000000b00000009 in ?? ()#8 0x000000090000000b in ?? ()#9 0x000000004c7f5412 in ?? ()#10 0x000000000053ab48 in ?? ()#11 0x0000000000000000 in ?? ()仔细看后,原因再清楚不过了,LD_LIBRARY_PATH没有设置好,可能是因为运行程序和gdb的环境不一样,可以手工设置下LD_LIBRARY_PATH,再gdb就OK了。
本文转自eyjian 51CTO博客,原文链接:http://blog.51cto.com/mooon/909754,如需转载请自行联系原作者