先分别将main.c和hello.c编译生成main.o和hello.o文件。然后将两个.o文件链接生成可执行文件newmain。

test gcc -Wall -c main.c -o main.o
➜  test gcc -Wall -c hello.c -o hello.o
➜  test gcc -Wall hello.o main.o -o newmain
➜  test ./newmain
hello world

独立编译的好处就是,如果我们的代码发生更改,只需要独立编译更改的文件,最后在一起链接生成可执行文件。