我想知道linux gdb调试。
我有1个执行文件,1个核心转储文件。 所以,我在linux中打开它 像这样,
gdb exefilename -c exefuilename.core
但是,我只显示错误消息。
warning: Could not load shared library symbols for 44 libraries, e.g. /usr/local/lib/libboost_system.so.1.55.0.
Use the "info sharedlibrary" command to see the complete listing.
Do you need "set solib-search-path" or "set sysroot"?
所以,我输入命令,
set solib-search-path /librarypath/
并且符号读取成功。 并且,我输入命令
quit
然后,我重新打开转储文件。像这样,
gdb exefilename -c exefuilename.core
但仍显示相同的错误消息。
warning: Could not load shared library symbols for 44 libraries, e.g. /usr/local/lib/libboost_system.so.1.55.0.
Use the "info sharedlibrary" command to see the complete listing.
Do you need "set solib-search-path" or "set sysroot"?
我不想永远不要显示此错误消息。 所以,我想保存库搜索路径。 我能怎么做?
答案 0 :(得分:2)
您可以创建名为.gdbinit
您可以将它放在您的主文件夹中(它将在所有项目中加载)或当前目录中(它将用于从此文件夹加载的gdb会话)。
各种各样的复杂性有很多有趣的例子。我一开始就保持简单 - 只需在本地文件夹中创建.gdbinit
一行
set solib-search-path /librarypath/
如果需要,可以稍后再添加。