redis-源码构建(windows环境)

准备环境

  1. 下载cygwin64工具,用于下载所需依赖
    下载地址:https://www.cygwin.com/

    如:gcc、make、zip、unzip
    依赖安装不全不用担心之后可以再用此工具补充安装

  2. 集成开发工具:clion

步骤

  1. 下载源代码:https://github.com/redis/redis

  2. 修改部分文件因windows环境导致的编译错误

    1. src\mkreleasehdr.sh 脚本文件需要将windows换行符修改为unix的换行符(LF),
      不然会报错
      CC release.o
      release.c:37:10: fatal error: release.h: No such file or directory
      37 | #include “release.h”
      | ^~~~~~~~~~~
      compilation terminated.
      make[1]: *** [Makefile:368: release.o] Error 1
      make[1]: Leaving directory ‘/cygdrive/d/workspace/redis/src’
      make: *** [Makefile:6: all] Error 2
      在这里插入图片描述

    2. 错误2

      
      	debug.c:1751:5: error: unknown type name 'Dl_info'
      	 1751 |     Dl_info info;
      	      |     ^~~~~~~
      	debug.c:1761:13: warning: implicit declaration of function 'dladdr'; did you mean 's_addr'? [-Wimplicit-function-declaration]
      	 1761 |         if (dladdr((void*)target, &info) != 0 && info.dli_sname != NULL) {
      	      |             ^~~~~~
      

      在src\debug.c这个源码中引用,它声明在#include <dlfcn.h>头文件中,此头文件在你cygwin64安装目录的\usr\include\dlfcn.h ,将里面的#if __GNU_VISIBLE注释掉(记得修改完后保存)
      在这里插入图片描述

  3. 最后在项目根路径执行make即可

  4. 在src目录下有可执行文件
    在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值