C 在查看核心转储时,如何丢弃对象文件中的符号并重新使用它?

C 在查看核心转储时,如何丢弃对象文件中的符号并重新使用它?,c,linux,gnu,strip,C,Linux,Gnu,Strip,要求是使用GNU strip放弃对象文件中的符号,并保存符号。稍后,如果这个对象文件有任何核心转储,我们必须包含符号来检查核心转储。我们怎样才能完成这项任务?提前谢谢 简单的解决方案是在剥离二进制文件之前保留其副本。然后,您可以使用非剥离版本来调查核心转储,因为除了剥离符号信息外,这些二进制文件将是相同的 因此,如果您有一个FOO二进制文件,请执行以下操作: cp FOO FOO.unstripped strip FOO 然后运行FOO,当您调查coredump时,使用FOO.unst

要求是使用GNU strip放弃对象文件中的符号,并保存符号。稍后,如果这个对象文件有任何核心转储,我们必须包含符号来检查核心转储。我们怎样才能完成这项任务?提前谢谢

简单的解决方案是在剥离二进制文件之前保留其副本。然后,您可以使用非剥离版本来调查核心转储,因为除了剥离符号信息外,这些二进制文件将是相同的

因此,如果您有一个FOO二进制文件,请执行以下操作:

  cp FOO FOO.unstripped
  strip FOO
然后运行FOO,当您调查coredump时,使用FOO.unstripped。

这里讨论了获取“符号文件”的不同方法:


实际上,链接的问题与此问题非常相似。

我们如何同时创建非剥离和剥离版本?谢谢,稍后我将尝试您的解决方案。您可能正在寻找。