01 redis 的环境搭建

发布于:2025-05-30 ⋅ 阅读:(20) ⋅ 点赞:(0)

前言

这一系列文章主要包含的内容主要是 各种常用软件的调试环境的搭建  

主要的目的是 搭建一个可打断点的一个调试环境 

c 系列 主要是基于 clion 调试, java 系列主要是基于 idea 调试, js 系列主要是基于 webstorm 调试 

需要有一定的 c, c++, java, js 相关基础 

基于的环境是一个 ubuntu16.04 desktop, 初始的时候 仅仅更新了源, 安装了 clion 

redis, nginx, mysql, vsftpd
javac, javap, jstack, jmap, jinfo
kafka,
spark, flink
coreutils, glibc, gdb 
hotspotVM, linux
... 等等其他

 

 

编译 redis-7.0.10 

首先去官方网站下载最新源码, 然后拷贝自 目标虚拟机 

 

 

 

开始编译, 编译之后 src 下面的 redis-server, redis-cli 即为编译好的 binary 

root@ubuntu:~/Desktop/WorkStations/redis-7.0.10/src# make noopt
    CC Makefile.dep
make OPTIMIZATION="-O0"
make[1]: Entering directory '/root/Desktop/WorkStations/redis-7.0.10/src'
    CC adlist.o
    CC quicklist.o
    CC ae.o
    CC anet.o
    CC dict.o
    CC server.o
    CC sds.o
// 省略一部分输出
    CC script.o
    CC functions.o
    CC function_lua.o
    CC commands.o
    LINK redis-server
    INSTALL redis-sentinel
    CC redis-cli.o
    CC redisassert.o
    CC cli_common.o
    LINK redis-cli
    CC redis-benchmark.o
    LINK redis-benchmark
    INSTALL redis-check-rdb
    INSTALL redis-check-aof

Hint: It's a good idea to run 'make test' ;)

make[1]: Leaving directory '/root/Desktop/WorkStations/redis-7.0.10/src'

 

root@ubuntu:~/Desktop/WorkStations/redis-7.0.10/src# ls -l | grep redis-server
-rwxr-xr-x 1 root  root  11838200 Apr  5 01:22 redis-server
root@ubuntu:~/Desktop/WorkStations/redis-7.0.10/src# ls -l | grep redis-cli
-rwxr-xr-x 1 root  root   5623144 Apr  5 01:22 redis-cli
-rw-rw-r-- 1 jerry jerry   347560 Mar 20 10:16 redis-cli.c
-rw-r--r-- 1 root  root       363 Apr  5 01:22 redis-cli.d
-rw-r--r-- 1 root  root   1354040 Apr  5 01:22 redis-cli.o

 

 

clion 中调试

clion 中打开 redis-7.0.10 项目 

新建 make application, 配置名称 

target 配置 make 相关, build 配置 Makefile 中 build 的命令, clean 配置 Makefile 中 clean 的命令 

executable 配置编译好的 redis-server 的可执行文件 

program arguments 即为 redis-server 所需要的参数, 这里配置为配置文件 

 

 

然后 调试启动项目, 打上断点 

 

 

测试断点 

使用编译好的 redis-cli 进行测试, 以上在 getCommand 中打上的断点, 因此我们这里 使用 get 命令

 

 

服务器这边 断点命中, 至此 可以正常调试了 

 

 

 

 

 


网站公告

今日签到

点亮在社区的每一天
去签到