C:编程:如何从main.c创建main.o?

Joh*_*nny -3 c unix

我正在尝试编写一个makefile,我编译了main.c. 然后我正在尝试创建main.o,但我很困惑如何这样做.我在UNIX中使用vi编辑器.我试过gcc -o main.c,我得到一个致命的错误,说没有输入文件.什么地方出了错?

Sam*_*ard 5

您可以使用gcc的-c选项编译源文件而不进行链接.这将为您留下一个.o文件:

gcc -c main.c
Run Code Online (Sandbox Code Playgroud)

然后,您可以通过链接创建一个可执行.o与标准库文件,以及其他.o.c文件,如果你喜欢:

gcc -o myprogram main.o
Run Code Online (Sandbox Code Playgroud)

这个的主要优点是你有多个.c文件.在这种情况下,您可以通过在其中一个更改时不重新编译它们来节省时间.