安装redis 及常见问题

最近安装了下redis遇到了些问题,现记录如下:
正常流程如下:

  1. 解压文件:
    tar xzvf redis-2.8.17.tar.gz
    
  2. 进入目录
    cd redis-2.8.17
    
  3. 编译
    make
    
  4. 测试
    make test
    
    通过会出现下面的提示:
    安装redis 及常见问题

如果途中一个错误都没有遇见,那么恭喜你,成功编译过去,下面的错误可以不用理会

途中遇到的错误如下:
1、cc: command not found
出现这个错误,网上的解决方案是安装gcc

	apt-get install gcc

但是我是装过gcc的,还是装的支持C++11版本的,可以查看我的这边博客:
https://blog.csdn.net/CLinuxF/article/details/82978801
所以我肯定不会重新用apt-get重装一个不支持C++11的低版本gcc,解决方案的就是在每个makefile文件中加上

CC=gcc

2、

#make
cd src && make all
make[1]: Entering directory `/software/redis-2.8.8/src'
    CC adlist.o
In file included from adlist.c:34:
zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory `/software/redis-2.8.8/src'
make: *** [all] Error 2

在第一次make的时候加上MALLOC=libc即可,我本人表示就第一次加过,后面make没加也没出现过这个错误了,因为后续会报另外一个错误。
3、

gcc: error: ../deps/lua/src/liblua.a: No such file or directory

这个错误,网上的解决方法几乎千篇一律,如下图

安装redis 及常见问题
表示他的错误解决了,我的并没有解决。于是乎,自己进入makefile,记录一下第一个要改的地方是:

cd  deps/lua
vim Makefile

安装redis 及常见问题
默认是5.1,我自己安装的5.3所以根据自己的版本来修改,保存并退出

:wq

然后make linux,即可,不然有什么生效,表示我并不是在这里make的,我是进入到src里面make的,

cd src
make linux

为什么要进入到src里面呢?因为我还是报了一个错,就是第一个错cc:命令不知道,

vim Makefile

安装redis 及常见问题
将CC?=gcc的?去掉保存并退出。
在src里面执行命令:

make linux

再次ls,会发现liblua.a就生成了。