编译静态库
gcc -c a.c b.c
那么就会生成 a.o b.o
ar r libac.a a.o b.o 注意生成的库前面要加入 lib (因为库连接的话,需要lib)
生成 静态库文件
ranlib libac.a
来对静态库的符号索引表进行更新。
gcc main.c -L. -lab -I . -o main
-L选项告诉编译器去哪里找需要的库文件,-L.表示在当前目录找。-lab告诉编译器要链 接libab库,-I(大写i)选项告诉编译器去哪里找头文件。
编译动态库
gcc -fPIC -c a.c b.c
gcc -shared -o libab.so a.o b.o
cp sudo cp libab.so /usr/lib 把动态库拷贝到 /usr/lib
详细参考