# make
cd src && make all
make[1]: Entering directory `/root/redis-5.0.5/src'
CC Makefile.dep
make[1]: Leaving directory `/root/redis-5.0.5/src'
make[1]: Entering directory `/root/redis-5.0.5/src'
CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory
#include <jemalloc/jemalloc.h>
^
compilation terminated.
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory `/root/redis-5.0.5/src'
make: *** [all] Error 2
在编译安装redis时出现上面的报错,找了好多相关帖子,很统一,都是说加个“MALLOC=libc”这个参数,即,“# make MALLOC=libc”,但是个人不太喜欢随意加些参数。
根据错误信息不难判断出是gcc引起的错误,应该是缺少gcc相关包,经过测试终于发现问题所在。
# yum install -y gcc-c++
# make
……
Hint: It's a good idea to run 'make test' ;)
……
安装“gcc-c++”,然后"make"就不会报错了。
注意:如果安装gcc-c++后执行make还报错,重新解压或者清楚原来的make信息。