linux 上安装redis 解压之后使用make命令报错

错误信息:

 In file included from adlist.c:34:0:
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
#include <jemalloc/jemalloc.h>

 

若出现【zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录】,则运行命令make MALLOC=libc)

 

解决方案1:
[root@WEB redis-3.0.6]# make
cd src && make all
make[1]: 进入目录“/root/lnmp_soft/redis-3.0.6/src”
CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
#include <jemalloc/jemalloc.h>
^
编译中断。
make[1]: [adlist.o] 错误 1
make[1]: 离开目录“/root/lnmp_soft/redis-3.0.6/src”
make: 
[all] 错误 2

解决1命令如下
[root@WEB redis-3.0.6]# make MALLOC=libc

cd src && make all
不知道是啥start:make[1]: 进入目录“/root/lnmp_soft/redis-3.0.6/src”
rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-dump redis-check-aof .o .gcda .gcno.gcov redis.info lcov-html
(cd ../deps && make distclean)
make[2]: 进入目录“/root/lnmp_soft/redis-3.0.6/deps”
(cd hiredis && make clean) > /dev/null || true

MALLOC这个环境变量用来去建立Redis的

不知道是啥end

 

解决方案2

 

2.cd deps/

3.make hiredis jemalloc linenoise lua geohash-int

 

 4.重新编译

 

 

make 成功后 提示Hint: It's a good idea to run 'make test'
输入:make test
错误3:make[1]: Entering directory `/root/software/redis-3.0.0/src'
You need tcl 8.5 or newer in order to run the Redis test
原因:没有安装tcl
解决方案:yum install -y tcl
然后
make test
然后还是提示Hint: It's a good idea to run 'make test'

只好放大招了:make distclean; make

 

 

方案2有问题 make distclean(清理的不干净) 换以下解决方案

解决:make clean

make

make test

posted @ 2020-03-05 11:21  打代码的小超人  阅读(3156)  评论(0编辑  收藏  举报