Linux下制作静态库 & 动态库
静态库
1.将.c生成.o文件
gcc-cadd.c-o add.o
2.使用ar工具制作静态库
ar rcs lib库名.a add.o sub.o div.o
3.编译静态库到可执行文件中
gcc test.c1ib库名.a-o a.out
gcc选项 -I:指定头文件所在目录位置。 -c:只做预处理、编译、汇编。得到二进制文件 -g:编译时添加调试语句。主要支持gdb调试。 -Wal1:显示所有警告信息。 -D:向程序中“动态”注册宏定义。#define NAME VALUE -l:指定动态库库名 -L:指定动态库路径
动态库
1.将.c生成.。文件,(生成与位置无关的代码-fPIC)
gcc-cadd.c-o add.o-fPIC
2.使用gcc -shared制作动态库
gcc -shared lib库名.so add.o sub.o div.o
3.编译可执行程序时,
指定所使用的动态库。
-l:指定库名
-L:指定库路径。
gcc test.c -o a.out -lmymath -L./lib
4.运行可以执行程序
./a.out