我为一个项目编写了一个自定义核心转储处理应用程序。我已经更改了'/proc/sys/kernel/core_pattern'以调用我的转储处理程序,并且成功地调用了它。
现在的问题是将核心转储保存到可以被gdb识别的文件中。当前,我的转储处理程序从STDIN读取转储并将其保存到文件“core.dump”中。当我尝试将此核心转储加载到gdb中时,它会给出错误:
(gdb) ...不是核心转储:无法识别文件格式
当我在标准核心转储上运行'file'命令时,它会给我以下内容:
core: ELF 64-bit LSB core file x86-64,version 1 (SYSV),SVR4-style,from './dump_gen'
对于自动生成的自定义转储,'file'给出以下内容:
core.dump: data
请问有人能帮助我如何正确地编写核心转储,以便可以在gdb中使用吗?
PS:我不想使用标准的核心转储文件。
现在的问题是将核心转储保存到可以被gdb识别的文件中。当前,我的转储处理程序从STDIN读取转储并将其保存到文件“core.dump”中。当我尝试将此核心转储加载到gdb中时,它会给出错误:
(gdb) ...不是核心转储:无法识别文件格式
当我在标准核心转储上运行'file'命令时,它会给我以下内容:
core: ELF 64-bit LSB core file x86-64,version 1 (SYSV),SVR4-style,from './dump_gen'
对于自动生成的自定义转储,'file'给出以下内容:
core.dump: data
请问有人能帮助我如何正确地编写核心转储,以便可以在gdb中使用吗?
PS:我不想使用标准的核心转储文件。