梗概
是可执行程序的一种引用代码打包方式
- 将程序需要的所有依赖模块代码都导入到同一个文件中
适用范围
特点
- 利用静态函数库编译成的文件比较大,因为整个函数库在编译时都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了。当然这也会成为他的缺点,因为如果你静态链接的函数库改变了,那么你的程序必须重新编译。
优点
- 代码更精简,因为不必做版本检查。
- 程序分发时文件个数少,因为静态链接到源文件里了。
- 只编译进来库中所用的部分,而不用整个库。
缺点
- 生成的binary占空间更大。
- 重复的库可能出现在多个进程,浪费内存。
- 库内部更新的话需要重新编译binary。