在我的应用程序的客户端有一个核心转储,在查看回溯时我没有加载符号......
(gdb) where
#0 0x000000364c032885 in ?? ()
#1 0x000000364c034065 in ?? ()
#2 0x0000000000000000 in ?? ()
(gdb) bt full
#0 0x000000364c032885 in ?? ()
No symbol table info available.
#1 0x000000364c034065 in ?? ()
No symbol table info available.
#2 0x0000000000000000 in ?? ()
No symbol table info available.
我想在此提及的是,正在使用的应用程序是使用-g选项构建的。
对我来说似乎没有加载所需的库。我尝试使用“符号文件”手动加载库,但这没有帮助。
可能出现什么问题?
答案 0 :(得分:7)
没有可用的符号表信息。
您可能无法正确调用GDB。不要这样做:
gdb core
gdb -c core
请改为:
gdb exename core
另请参阅this answer,了解从客户机器获取核心的有意义的崩溃堆栈跟踪可能需要做些什么。
答案 1 :(得分:-1)
当您运行带有可执行文件路径的gdb
与生成核心转储的路径不对应时,会发生这种情况。
确保为gdb提供正确的路径。
<put an example of correct code or commands here>