Linux环境下的静态链接库和动态链接库
Posted CodeAllen嵌入式编程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux环境下的静态链接库和动态链接库相关的知识,希望对你有一定的参考价值。
什么是链接库
计算机中,有些文件专门用于存储可以重复使用的代码块,例如功能实用的函数或者类,我们通常将它们称为库文件,简称“库”(Library)。
以 C 语言为例,如下为大家展示的就是一个函数库:
//myMath.c
int add(int a, int b)
return a + b;
int sub(int a, int b)
return a - b;
int mul(int a, int b)
return a * b;
int div(int a, int b)
if (b != 0)
return a / b;
return -1;
myMath.c 文件中包含 4 个函数,它们分别可以完成两个整数的加法、减法、乘法和除法运算。myMath.c 库文件的用法也很简单,直接将它添加到某一个 C 语言项目中,就可以直接调用文件中的 4 个函数,每个函数可以调用多次。
显然,实际开发中引入他人编写好的库文件可以省略某些功能的开发环节,提高项目的开发效率。但遗憾的是,类似 myMath.c 这种“开源”的库文件很难找到,多数程序员并不会直接分享源代码,他们更愿意分享库文件的二进制版本——链接库。
所谓链接库,其实就是将开源的库文件(例如上面提到的 myMath.c)进行编译、打包操作后得到的二进制文件。虽然链接库是二进制文件,但无法独立运行,必须等待其它程
以上是关于Linux环境下的静态链接库和动态链接库的主要内容,如果未能解决你的问题,请参考以下文章