Redis比较傲娇,在windows上还没有很好的安装方式,不得已搞了个虚拟机玩玩。
装Redis十分简单,按照下面的几个命令来就行了。安装命令
wget http://download.redis.io/redis-stable.tar.gztar xzf redis-stable.tar.gzcd redis-stablemake
在make之前别忘了要装gcc啊!
进入目录redis-stable之后,直接进行make命令会报错的: 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原因
在README中有一段话是:
AllocatorSelecting a non-default memory allocator when building Redis is done by setting
the `MALLOC` environment variable. Redis is compiled and linked against libc malloc by default, with the exception of jemalloc being the default on Linux systems. This default was picked because jemalloc has proven to have fewer fragmentation problems than libc malloc.To force compiling against libc malloc, use:
% make MALLOC=libc
To compile against jemalloc on Mac OS X systems, use:
% make MALLOC=jemalloc
说关于分配器allocator,如果有MALLOC这个环境变量,会有用这个环境变量的去建立Redis。
而且libc并不是默认的分配器,默认的是jemalloc,因为 jemalloc被证明有更少的fragmentation problems比libc。 但是如果你又没有jemalloc而只有libc当然make出错。所以加这么一个参数。但是我继续在原来的包里面通过make MALLOC=libc安装,但是还是失败了,后来把之前解压的给删掉了,重新解压了一个,然后在用这个命令就装好了。
Hint: It's a good idea to run 'make test' ;) 可是这个又报下面的错: You need tcl 8.5 or newer in order to run the Redis testwget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz sudo tar xzvf tcl8.6.1-src.tar.gz -C /usr/local/ cd /usr/local/tcl8.6.1/unix/ ./configure make make install
不知道怎么回事,把源码解压之后在安装,进入目录直接make
也可以了~
make test
就可以检查了。 总结
- 最后安装还是在redis解压的文件夹下用的make
- redis的版本这里不知道,直接是下载的稳定版