2026/7/28 16:47:05

Linux库文件

Linux库文件 库文件是预先编译好的方法的集合库文件分为静态库和共享库在Linux操作系统中静态库的扩展名为.a共享库的扩展名为.so。静态库(1)特点在程序链接阶段被复制到程序中(2)创建静态库 源文件 fun.c main.cgcc -c main.c fun.c //生成相应的.o文件 //使用ar将目标文件归档 ar crv libxxx.a main.o fun.olibxxx.a则是生成的静态库。共享库(1)特点在程序运行阶段被动态加载到内存中(2)创建共享库 源文件max.cgcc -fPIC -shared -o libxxx.so max //#1 gcc -c -fPIC max.c gcc -shared -o libxxx.so max.o //#2上面两种方式都可以创建共享库libxxx.so则是生成的共享库静态库和动态库的区别静态库在程序链接阶段复制到程序中共享库在程序运行阶段动态加载到内存中静态库多次使用会生成多份拷贝占用较多内存。共享库只需要加载一次多次使用只会生成相同的副本节省内存空间Linux下静态库的文件扩展名为.a共享库的文件扩展名为.so