库:Linux:静态库(libxxxx.a)和动态库(libxxxx.so)
库:windows静态库(xxxx.lib)和动态库 (xxxx.dll)
ldd 可以看自己所依赖的目标文件
/lib64/libc.so.6------>这是c标准库
file code (动态库)
大小:
gcc code.o -o code-jingtai -static(使动态库链接静态库)
动态库优缺点:
优点:
• 更加节省内存并减少页面交换;
• 库文件与程序文件独立,只要输出接口不变,更换库文件不会对程序文件造成任何影响,因而极大地提高了可维护性和可扩展性;
• 不同编程语言编写的程序只要按照函数调用约定就可以调用同一个库函数;
• 适用于大规模的软件开发,使开发过程独立、耦合度小,便于不同开发者和开发组织之间进行开发和测试。
缺点:
• 运行时依赖,否则找不到库文件就会运行失败
• 运行加载速度相较静态库慢一些
• 需要对库版本之间的兼容性做出更多处理
静态库优点:不依赖库
缺点:浪费磁盘和内存空间