我正在使用Linux中的GDB进行调试,但在调试它时会从某个库中加载符号。
如何告诉GDB从我的库中加载符号?
答案 0 :(得分:1)
如何告诉GDB从我的库中加载符号?
当您拥有使用调试信息构建的共享库副本以及系统上安装的该库的剥离副本时,通常会出现这种情况。解决方案是使用add-symbol-file
命令。
然而,非常可能是你不在上述情况下,而你真正要求的是“我怎样才能制作这个节目(和不只是GDB)使用我的库副本而不是系统安装的?“
如果是这样,答案是使用-Wl,-rpath=/my/lib
(其中/my/lib
包含libfoo.so
)重建您的可执行文件,或者设置LD_LIBRARY_PATH=/my/lib
。这将导致程序在运行时使用/my/lib/libfoo.so
,GDB将自动加载符号。