Redis-0x03-Makefile脚本
Redis以make作为项目构建管理工具,因此我们只要看Makefile的rule编写,就知道编译源码的过程了。况且每个人编写Makefile的习惯各样,也可以借此良机借鉴风格。
1 项目编译
首先,在Readme中作者描述了如何编译项目,即在项目根目录执行make
。
2 根目录Makefile
根据编译命令可知,我们只要关注当前文件的第一条rule即可,如下:
Makefile
1 |
|
关于make的规则,可以参考官网的文档。
3 src目录下Makefile
Makefile
1 |
|
从MakeFile中可以看出来redis工程共提供了如下6个可执行程序的编译
redis-server
redis-sentinel
redis-check-rdb
redis-check-aof
redis-cli
redis-benchmark
以redis-server可执行程序的编译为例
3.1 源码文件
Makefile
1 |
|
3.2 .o文件
Makefile
1 |
|
上面的源码文件gcc编译为.o中间文件
3.3 链接
Makefile
1 |
|
链接.o中间文件和链接库文件,编译为可执行文件
系统依赖
静态库
动态库
3.4 系统依赖
Redis-0x03-Makefile脚本
https://bannirui.github.io/2024/04/13/Redis/Redis-0x03-Makefile脚本/