.o文件 概念

来源:13-1 可执行程序的编译过程

十三山入秋

2021-01-13

老师您好,我又来了

这里.o文件,用file查了之后,说是一种COFF文件,COFF文件,意思是“可执行文件”,
.o应该叫“目标文件”,是不是链接完地址以后,才能叫“可执行文件”?

这里,是不是有什么问题

我查了一下,
“ELF 对应于UNIX 下的文件,而PE 则是Windows 的可执行文件,ELF和PE 文件都是基于Unix 的 COFF(Common Object File Format) 改造而来,更加具体的来说,他是来源于当时著名的 DEC(Digital Equipment Corporation) 的VAX/VMS 上的COFF文件格式。”
----https://www.jianshu.com/p/af9766222816

写回答

1回答

bennyhuo

2021-01-13

嗯一般 .o 文件是目标文件,链接完以后才是可执行文件,COFF、ELF、PE 这都只是文件格式而已。至于是不是可执行,看你怎么理解,编译之后得到的目标文件你也可以加权限运行它,只不过找不到的符号会给你报错而已。

1
3
十三山入秋
gcc -c .s -o .o 用小c,如果用大C直接变成可执行文件了,哈哈哈哈
2021-01-13
共3条回复

C语言系统化精讲 重塑编程思想 打造坚实的开发基础

如果通向大牛的道路有捷径,那就是先学好C语言

2208 学习 · 853 问题

查看课程