应该使用什么命令来创建仅包含所有目标文件符号的文件?

时间:2014-06-14 21:01:37

标签: c++ linux gdb

我正在寻找一个命令,它可以为剥离的二进制文件创建补充文件,它是使用命令创建的:strip --strip-all foo 事实上,我很高兴有创建两部分可执行文件的程序:一部分是完全剥离的可执行文件,第二部分包含所有符号。剥离的可执行文件也应该链接到符号文件。该过程类似于objcopy手册页中描述的调试符号:

1.正常链接可执行文件。假设被称为   "富"然后...

2.Run" objcopy --only-keep-debug foo foo.dbg"至   创建一个包含调试信息的文件。

3.Run" objcopy --strip-debug foo"创造一个   剥离的可执行文件。

4.Run" objcopy --add-gnu-debuglink = foo.dbg foo"   将调试信息的链接添加到
  剥离的可执行文件。

问候

1 个答案:

答案 0 :(得分:1)

根据http://marcioandreyoliveira.blogspot.dk/2008/03/how-to-debug-striped-programs-with-gdb.html,您应该保存已编译的可执行文件的副本并删除可执行文件以进行部署。 调试时,您可以指示GDB从保存的可执行文件中加载符号。我认为没有理由使用objcopy。