gpt4 book ai didi

gcc - 如何使用 GCC 生成 ELF 文件?

转载 作者:行者123 更新时间:2023-12-04 10:00:30 27 4
gpt4 key购买 nike

我正在 Linux 操作系统上编写 C 和 C++ 代码,我正在使用 GCC。完成我的代码后,我想生成一个 ELF 文件。我只是可以生成“a.out”文件而我不需要它。我怎样才能得到 ELF 文件? ELF 文件是由于什么导致的?或者可以用这个程序生成这个文件吗?

最佳答案

编译器(即 gccg++ )将调用链接器( ld )产生一个 ELF 可执行文件。

在实践中,您将使用构建器程序(如 make )来驱动 gcc命令。见 this answer .
gcc 的默认输出文件仍命名 a.out (由于历史原因)但它是一个 ELF 文件。而且你真的想问gcc输出具有更花哨名称的可执行文件。

简单的例子,你编写一个单文件 hello-world.c程序。你可以用例如编译它

 gcc -Wall -g hello-world.c -o hello-world-bin

( gcc 的参数顺序很重要!)

和产生的 hello-world-binELF可执行。检查
 file hello-world-bin

然后运行它
 ./hello-world-bin your arguments to it

稍后,学习如何使用 gdb调试器就可以了。

另见 thisthat答案。

关于gcc - 如何使用 GCC 生成 ELF 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21689261/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com