安装Redis在启动服务需要编译,结果编译报错(摘)

错误描述
安装Redis 2.8.18时,编译的时候报错:

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 `/data0/src/redis-2.6.2/src'

make: *** [all] Error 2 

原因分析
关于分配器allocator, 如果有MALLOC  这个 环境变量, 会用这个环境变量去建立Redis。
而且libc 并不是默认的 分配器, 默认的是 jemalloc, 因为 jemalloc 被证明 有更少的 fragmentation problems 比libc。
但是如果你又没有jemalloc 而只有 libc 当然 make 出错。 所以加这么一个参数。

解决办法
make MALLOC=libc

猜你喜欢

转载自blog.csdn.net/qq_36579211/article/details/80982991
今日推荐