1

我在 asm 中有一个小的“hello world”程序。编译和链接后,我可以在最终的 elf 文件(使用文本编辑器打开)中看到我用于变量和标签的所有名称。为什么 ?变量等不应该被静态或相对地址替换吗?如何隐藏此信息?

我在 ubuntu x86 64 上使用 nasm:nasm -f elf64 hello.asm && ld -o a hello.o

4

2 回答 2

1

剥离也可以通过调用--strip-all标志在链接时间内完成,在您的情况下: nasm -f elf64 hello.asm && ld -o a hello.o --strip-all.

如果您只想删除可以使用的调试符号,这将从输出文件中删除所有符号--strip-debug

您可以在此处阅读更多选项:http: //ftp.gnu.org/old-gnu/Manuals/ld-2.9.1/html_node/ld_3.html

于 2013-11-08T22:31:44.930 回答
1

这是调试信息。您可以使用命令条将其从目标文件中删除。

于 2013-10-27T09:10:05.557 回答