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
The solution is:
Make MALLOC=LIBC
There has been a solution on the Internet, why add this, in the Readme has this paragraph.
Allocator---------Selecting A non-default memory Allocator when building Redis are done by settingthe ' MALLOC ' environment Variable. Redis is compiled and linked against Libcmalloc by default, with the exception of Jemalloc being the default on Linuxsyste Ms. This default is picked because Jemalloc has proven to having fewerfragmentation problems than libc malloc. To force compiling against libc malloc, use: % make malloc=libcto compile against Jemalloc on Mac OS X Systems, use:
% make Malloc=jemalloc
said about the allocator allocator, if there is malloc this environment variable, it will be useful for this environment variable to establish redis.
and libc is not the default allocator, the default is Jemalloc, because Jemalloc is proven to have fewer fragmentation problems than libc.
But if you don't have a jemalloc and only libc of course make a mistake. So add such a parameter.
Redis 2.8.18 Installation Error