静态库
创建主函数:main.c 应用函数:add.c、sub.c、mul.c


 

创建calc.h文件作为头文件
 
生成可执行文件*.o文件
gcc -c add.c -o add.o
....
 
包装*.o文件为静态库
ar -rc libmymath.a add.o sub.o mul.o
 
编译静态库并指明创建静态库的位置
sudo gcc main.c -static -L. -lmycalc -o static_main
 
运行主函数
./static_main
 

动态库
将.c文件编译成可执行*o文件
sudo gcc -c -fPIC add.c -o add.o
gcc -c -fPIC sub.c -o sub.o
gcc -c -fPIC mul.c -o mul.o
 
包装成动态库文件
sudo gcc -shared -o libmycalc.so add.o sub.o mul.o
 
编译主函数
gcc main.c -L. -lmycalc -o shared_main
 
配置动态库路径环境
LD_LIBRARY_PATH=.
export LD_LIBRARY_PATH  //使配置生效
 
运行函数
./shared_main
 















![[Framework] Android Binder 工作原理](https://img-blog.csdnimg.cn/img_convert/aace4c0427b00571f98228b0f669b460.webp?x-oss-process=image/format,png)




