先去弄Cygwin环境

http://www.cygwin.com/

下载完成

打开

下一步

下一步

下一步

下一步

下一步,出现一个界面,让你添加地址,你打开官网,选择mirror sites,点击下面的 Hong Kong(http://mirror-hk.koddos.net/cygwin/

把Hong Kong的地址填上,下一步,出现一个选择包的界面

搜索框里输入文字自动搜索,点击“New”的一列,有个那个下拉按钮,选择版本

还有automake

下一步

下一步

完成

双击桌面上的图标,启动

检查状态和版本

$ cygcheck -c cygwin
Cygwin Package Information
Package Version Status
cygwin 3.0.- OK

检查gcc

$ gcc --version
gcc (GCC) 7.4.
Copyright © Free Software Foundation, Inc.
本程序是自由软件;请参看源代码的版权声明。本软件没有任何担保;
包括没有适销性和某一专用目的下的适用性担保。

检查make

$ make --version
GNU Make 4.2.
为 x86_64-unknown-cygwin 编译
Copyright (C) - Free Software Foundation, Inc.
许可证:GPLv3+:GNU 通用公共许可证第 版或更新版本<http://gnu.org/licenses/gpl.html>。
本软件是自由软件:您可以自由修改和重新发布它。
在法律允许的范围内没有其他保证。

编译Redis

这里我已经下载好了,解压。进入此目录,执行make

这个时候,会报错

cc: 错误:../deps/hiredis/libhiredis.a:No such file or directory
cc: 错误:../deps/lua/src/liblua.a:No such file or directory

我们进入hiredis目录,执行make,同样报错

net.c: 在函数‘_redisContextConnectTcp’中:
net.c:270:21: 错误:‘hints’的存储大小未知
struct addrinfo hints, *servinfo, *bservinfo, *p, *b;

解决:把hiredis目录删除,去GitHub下载新的替代出问题的。https://github.com/redis/hiredis

执行make,不报错了

下面进入lua的目录,执行make generic

这个也没什么问题。进入linenoise目录,执行make

最后进入根目录,执行make

最后,启动验证

客户端

但是有个问题哦,也就是说:我编译这个东西的初衷就是,让编译好的Redis能直接在Windows上启动,而利用Cygwin64编译的,只能通过Cygwin64命令行来启动。下面是我直接打开redis-server.exe:

所以说,从这一方面来说,没达到我想要的结果。微软有Windows版本的Redis,但是那个最新就是3.X的,现在redis都5.X了,想自己编译一个高版本的还不行。。。

不过呢,虽然我们无法直接启动,但是我们可以直接使用的。比如我本地的客户端连接也是可以连得上的

不过Cygwin也是个不错的玩意,能在Windows上模拟出Linux的环境。

1. 大量GNU和开源工具的集合,它们在Windows上提供类似Linux发行版的功能。

2. 一个DLL (cygwin1.dll),它提供了大量的POSIX API功能

至于那个所需的dll文件,就在安装目录的bin目录下

所以~我有个大胆的想法(复制到redis-server.exe同级目录)

成功了!

客户端连接也没啥问题

我整理了一下,大概就这几个文件

我把文件打包上传到GitHub了:https://github.com/Mysakura/DataFiles

Windows下编译Redis5.0.5的更多相关文章

  1. windows 下编译 OpenSSL1.0.2l 版

    1.需要的软件工具: microsoft visual studio2013(或2010以后其他版本) Perl 软件, 版本为strawberry - perl - 5.26.0.1 - 64bit ...

  2. 继《在Windows下编译扩展OpenCV 3.1.0 + opencv_contrib》修订

    在之前的<在Windows下编译扩展OpenCV 3.1.0 + opencv_contrib>中有些问题,后来由于时间不是很充足,故现在对其中的问题进行完善,如下所示对红色框框中的相应的 ...

  3. [转] Windows下编译OpenSSL

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  4. Windows下编译objective-C

    Windows下编译objective-C 2011-08-31 14:32 630人阅读 评论(0) 收藏 举报 windowscocoa工具objective clibraryxcode   目录 ...

  5. 在Windows下编译FFmpeg详细说明

    MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNC工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时 MinGW,即 Minimalist GNU F ...

  6. 如何在WINDOWS下编译BOOST C++库 .

    如何在WINDOWS下编译BOOST C++库 cheungmine 2008-6-25   写出来,怕自己以后忘记了,也为初学者参考.使用VC8.0和boost1.35.0.   1)下载boost ...

  7. 在Windows下编译OpenSSL(VS2005和VC6)

    需要说明的是请一定安装openssl-0.9.8a .  openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...

  8. windows下编译java源文件的编码错误

    import java.util.Arrays;public class ArrayAsAReference{ public static void main(String[] args) { int ...

  9. Windows下编译SDL

    Windows下编译SDL的理由我就不多说了,无论用VS来编译或调试SDL库都是很方便的.而且SDL源代码中也包含了VC工程,你所要做的只是解压VC工程,进行适当的配置,然后编译.调试. 编译SDL大 ...

随机推荐

  1. Codeforces Round #603 (Div. 2) D. Secret Passwords(并查集)

    链接: https://codeforces.com/contest/1263/problem/D 题意: One unknown hacker wants to get the admin's pa ...

  2. Gcd HYSBZ - 2818 (莫比乌斯反演)

    Gcd \[ Time Limit: 10000 ms\quad Memory Limit: 262144 kB \] 题意 求 \(gcd\left(x,y\right) = p\) 的对数,其中\ ...

  3. Luogu P2447 [SDOI2010]外星千足虫 高斯消元

    链接 给出的条件是异或类型的方程,可以直接用bitset优化高斯消元. 至于求K,在高斯消元时记录用到的最大的方程的编号即可. 代码: // luogu-judger-enable-o2 #inclu ...

  4. markdown转html

    今天临时要写接口文档,然后发现部门给的文档是markdown文件的,而接口文档是要html格式的,因此想直接把markdown转为html 这里我使用的是marked 首先初始化一个node项目 np ...

  5. xms西软预定列表-房类市场

    select b.descript,sum(a.quan) as quan,case WHEN c.descript is null THEN '团队预留' ELSE c.descript end a ...

  6. 在vb.net中使用委托:经理 和 员工

    现在开发的一个 vb.net系统,其中有两个窗体:alert窗体和 case窗体. 在alert窗体中列出了当前可以操作的若干个alert(可以理解为数据记录),用户可以选择将其中一个或几个alert ...

  7. 区间DP复习

    区间DP复习 (难度排序:(A,B),(F,G,E,D,H,I,K),(C),(J,L)) 这是一个基本全在bzoj上的复习专题 没有什么可以说的,都是一些基本的dp思想 A [BZOJ1996] [ ...

  8. DataGrip:Error encountered when performing Introspect schema xxx 错误的解决方法

    datagrip的问题,转载自: https://www.cnblogs.com/geb515/p/7995249.html 把Introspect using JDBC _metadata打上勾 然 ...

  9. js回文数的四种判断方法

    目录 1. 字符串的转换 1.1 简单点,使用高阶函数来完成 1.2 从后往前循环字符串数组 1.3 以中间数为节点,判断左右两边首尾是否相等 2. 数字转换 2.1 求模得尾数,除10得整数 判断一 ...

  10. 对回溯算法的理解(以数独游戏为例,使用c++实现)

    算法思想: 数独游戏的规则: 每一行都用到1.2.3.4.5.6.7.8.9位置不限: 每一列都用到1.2.3.4.5.6.7.8.9位置不限: 每3×3的格子(共九个这样的格子)都用到1.2.3.4 ...