创建 ELF 而不是 a.out

问题描述 投票:0回答:2

我需要使用 gcc 生成一个简单的“Hello World”ELF32 可执行文件。 不过我似乎没有 gcc-elf 命令。 是否可以创建 ELF 二进制文件而不是 a.out 而无需再次构建 gcc?

(我假设有一些选项应该是可能的,但我不确定如何继续)

c gcc elf
2个回答
12
投票

检查文件

a.out
:

$ file a.out
a.out: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped

我相信默认名称保留为

a.out
,但格式是ELF。


11
投票

a.out
已经很老了,我们谈论的是 linux 的内核版本 1.2。假设您在任何最新的 Linux 平台上操作,默认情况下您将生成 elf 可执行文件。对输出可执行文件使用
file
命令进行验证。例如:

$ file server
server: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, not stripped
© www.soinside.com 2019 - 2024. All rights reserved.