android ndk学习

c语言第四讲 动态库、静态库

2021-10-25  本文已影响0人  大旺旺的弟弟小旺旺

静态库和动态库的生成

静态库

静态库就是一些目标文件的集合,一般以.a结尾,使用于生成可执行文件阶段。
链接器将库文件取得所需要的代码。复制到可执行文件中,特点就是它是数据的一份复制,缺点就是需要不听的复制,如果有更新就需要对其重新编译和发布。

如何生成静态文件呢

gcc -c test.c -o test.o
ar rcs libtest.a test.o
- r:增加或者更新新文件
- c:无论如何都创建
- s:创建文档索引
ar t libtest.a

动态库

动态库在链接阶段没有被复制,在程序运行的时候有系统动态加载到内存。系统只会加载一次,可以节约内存.

如何生成静态库

首先也是生成目标文件

gcc -c test.c

使用0shared -fPIC

gcc -shared -fPIC -o libtest.so test.o
上一篇下一篇

猜你喜欢

热点阅读