编译流程
预处理
gcc -E test.c -o test.i test.c源码进行预处理,预处理后停止编译,预处理后文件体积会变大,且为文本格式
编译
gcc -S test.i -o test.s 编译预处理的文件
汇编
gcc -c test.s -o test.o .s转成二进制文件
链接
gcc test.o -o test 将多个目标文件以及所需要的库文件链接生成可执行文件的过程
./test
生成静态库
动态库
gcc -shared -fPIC -o libtool.so tool.o