use*_*447 2 linux debugging gdb visualgdb
我想知道 linux gdb 调试。
我有 1 个执行文件,1 个核心转储文件。所以,我像这样在linux中打开它,
gdb exefilename -c exefuilename.core
Run Code Online (Sandbox Code Playgroud)
但是,我只显示错误消息。
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"?
Run Code Online (Sandbox Code Playgroud)
所以,我输入命令,
set solib-search-path /librarypath/
Run Code Online (Sandbox Code Playgroud)
和符号读取成功。并且,我输入命令
quit
Run Code Online (Sandbox Code Playgroud)
并且,我重新打开转储文件。像这样,
gdb exefilename -c exefuilename.core
Run Code Online (Sandbox Code Playgroud)
但仍然显示相同的错误消息。
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"?
Run Code Online (Sandbox Code Playgroud)
我不想永远显示此错误消息。所以,我想保存库搜索路径。我能怎么做?
您可以创建一个名为 .gdbinit
您可以将它放在您的主文件夹中(它将为所有项目加载)或当前目录中(它将用于从此文件夹加载的 gdb 会话)。
周围有很多各种复杂性的有趣例子。我会保持简单的开始 - 只需.gdbinit在您的本地文件夹中用那一行创建一个
set solib-search-path /librarypath/
Run Code Online (Sandbox Code Playgroud)
如果需要,也许以后再添加更多。