1.mylib.h
12
#include <stdio.h>int interface(void);
1.mylib.c
12345
#include "mylib.h"int interface(void){ printf("this is my first interface ");}
1234
#编译目标文件gcc -c mylib.c -o mylib.o#制作静态库文件ar crs libmylib.a mylib.o
#编译目标文件gcc -c mylib.c -o mylib.o#制作动态链接库、gcc -shared -o libmylib.so mylib.o
1234567
/*main.c*/#include <mylib.h>int main(void){ interface(); return 0;}
#编译gcc -L. -lmylib main.c -o main#运行./main
123456
编译目标文件gcc -L. -lmylib main.c -o main#运行#是指动态链接库的路径,(可以设置LD_LIBRARY_PATH的值或者是将编译好的动态链接库拷贝至/usr/lib路径下)export LD_LIBRARY_PATH=../main