[Makefile应用] --- Makefile编译动态库并使用
Posted Overboom
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Makefile应用] --- Makefile编译动态库并使用相关的知识,希望对你有一定的参考价值。
0. 引言
本篇blog写作的目的:
- 生一个项目中成一个简单的动态库
- 在另一个项目中使用这个简单的动态库
开发环境:Ubuntu1804
开发语言:C++
重点的Makefile的使用
1. 静态库/动态库的基本知识
不管是 Linux 还是 Windows 中的库文件其本质和工作模式都是相同的,只不过在不同的平台上库对应的文件格式和文件后缀不同。程序中调用的库有两种 静态库和动态库,不管是哪种库文件本质是都是二进制的源文件。
在项目中使用库一般有两个目的,一个是为了使程序更加简洁不需要在项目中维护太多的源文件,另一方面是为了源代码保密,毕竟不是所有人都想把自己编写的程序开源出来。
当我们拿到了库文件(动态库、静态库)之后要想使用还必须有这些库中提供的 API 函数的声明,也就是头文件,把这些都添加到项目中,就可以快乐的写代码了。
2. 在一个项目中生成.so文件
本项目以计算器为示例,包括4个.c文件,以及一个头文件,目录结构如下:
add.c
以上是关于[Makefile应用] --- Makefile编译动态库并使用的主要内容,如果未能解决你的问题,请参考以下文章
[Makefile应用] --- Makefile编译动态库并使用