静态库动态库
静态库:是在执行程序之前就已经加入到执行代码中,成为执行程序的一部分来执行的,后缀名:.a
动态库:是在执行程序启动时加载到执行代码中,后缀名:.so
静态库和动态库区别:
动态库编译速度慢,执行速度快,但是生成的程序体积较大,占用内存,然而动态库较易升级,就布局而言,动态库代码不易布局,执行效率低,静态库的特征与其相反‘
静态库动态库的制作过程:
gcc -c add.c 形成.o文件
ar rcs -libadd.a add.o
gcc main.c -ladd
gcc main.c -ladd -L. -o main
./main
gcc -shared -f’PIC -o libadd1.so add.c
gcc main.c / 绝对路径 / libadd1.so -o add