编译流程、静态库、动态库

mac系统
提前准备好test.c文件,内容如下

include<stdio.h>

int main(){
printf("hello world!\n");
return 0;
}
打开终端,切到test.c文件所在目录
一、编译流程
1、预处理
gcc -E test.c -o test.i
2、编译
gcc -S test.i -o test.s
3、汇编
gcc -c test.s -o test.o
4、链接
gcc test.o -o test
最后生成的为可执行文件,输入
./test
输出
hello world!
二、生成静态库
1、生成目标文件
gcc -c test.c -o test.o
2、使用ar命令将目标文件打包成静态库
ar rcs libtest.a test.o
三、生成动态库
1、生成目标文件
gcc -c test.c
2、使用-fPIC和-shared生成动态库
gcc -shared -fPIC -o libtest.so test.o

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容