Linux:动静态库

库: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(使动态库链接静态库)

动态库优缺点:

优点:

• 更加节省内存并减少页面交换;

• 库文件与程序文件独立,只要输出接口不变,更换库文件不会对程序文件造成任何影响,因而极大地提高了可维护性和可扩展性;

• 不同编程语言编写的程序只要按照函数调用约定就可以调用同一个库函数;

• 适用于大规模的软件开发,使开发过程独立、耦合度小,便于不同开发者和开发组织之间进行开发和测试。

缺点:

• 运行时依赖,否则找不到库文件就会运行失败

• 运行加载速度相较静态库慢一些

• 需要对库版本之间的兼容性做出更多处理

静态库优点:不依赖库

缺点:浪费磁盘和内存空间

相关推荐
Lueeee.9 分钟前
字符设备驱动---自己实现点LED
linux
Full Stack Developme9 分钟前
linux sudo su su - 三者区别
linux·运维·服务器
Byron Loong13 分钟前
【系统】Linux内核和发行版的关系
linux·运维·服务器
weixin_3993806941 分钟前
OA 系统假死问题分析与优化
java·运维
SmartRadio44 分钟前
在CH585M代码中如何精细化配置PMU(电源管理单元)和RAM保留
linux·c语言·开发语言·人工智能·单片机·嵌入式硬件·lora
济6171 小时前
linux(第十四期)--Uboot移植(2)-- 在U-Boot 中添加自己的开发板-- Ubuntu20.04
linux·运维·服务器
ben9518chen1 小时前
嵌入式linux操作系统简介
linux·运维·服务器
菜鸟笔记本1 小时前
linux设置定时备份mysql数据
linux·mysql·oracle
majingming1231 小时前
ubuntu下的交叉编译
linux·运维·ubuntu
shchojj1 小时前
ubuntu 因为写错pam.d文件引起的sudo权限丢失
linux·运维·ubuntu