我研究了很多关于网络上的ELF文件,但我找不到我想要的。我正在Linux操作系统上编写C和C++代码,我正在使用gcc和Kate程序。完成我的代码后,我想生成ELF可执行文件。我只能生成“a.out”文件,我不需要它。我如何获得ELF文件? ELF文件是由什么发生的?或者是否有可能用这个程序生成这个文件?如何在Linux上生成ELF文件?
4
A
回答
11
编译器(即gcc
或g++
)将调用产生ELF可执行文件的链接器(ld
)。
实际上,您将使用构建器程序(如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-bin
是ELF可执行文件。请与
file hello-world-bin
然后用
./hello-world-bin your arguments to it
后来运行它,学习如何使用调试器gdb
上。
+1
非常具有描述性和有用的评论。我非常了解。 –
相关问题
- 1. 如何在Linux ELF
- 2. ELF文件生成命令和选项
- 3. 如何在Windows上为Linux生成可执行文件?
- 4. 生成在Linux上
- 5. 如何生成QNX IFS图像的ELF文件
- 6. 生成.so文件而不是.exe文件中qt4.7在Linux上
- 7. 为Java/Linux生成文件
- 8. Linux ARM ELF和iOS ARM ELF文件有什么区别?
- 9. android art elf和Linux elf文件有什么区别?
- 10. FreeBSD&Linux中的ELF文件结构
- 11. Linux ELF文件部分名称
- 12. 如何检查Linux上ELF文件的数据部分的内容?
- 13. 轨ELF文件OS ABI服务器Linux服务器上无效
- 14. Linux上的COFF或Windows上的ELF
- 15. 如何在Linux中生成核心转储文件?
- 16. 如何在Linux中从命令行生成xls文件?
- 17. 如何在linux上编译cmake以便它可以生成vsproj文件?
- 18. 如何在Linux平台上使用C动态生成XML文件?
- 19. 如何生成可在macOS和Linux上运行的可执行文件
- 20. 在GNU/Linux上生成lnk文件以转移到窗口
- 21. 在Linux服务器上使用php生成一个word文件
- 22. Subversion应忽略在Linux上由Maven生成的目标文件
- 23. 在linux上生成有效的ical文件
- 24. 在QtCreator上生成Linux可执行文件
- 25. cryoPID如何创建ELF头文件或者是否有一个简单的ELF生成方法?
- 26. 使用arm-none-eabi-gcc从cpp生成elf文件
- 27. 启动期间生成的ELF可执行文件段错误
- 28. 强制GNU链接器生成32位ELF可执行文件
- 29. 如何在A7上运行.xls文件并生成.csv文件?
- 30. 如何在Mac OS X上创建ELF可执行文件?
a.out是一个ELF文件。 –
可能重复[创建ELF而不是a.out](http://stackoverflow.com/questions/5565594/creating-elf-instead-of-a-out) –