Building Redis
--------------
+Redis can be compiled and used on Linux, OSX, OpenBSD, NetBSD, FreeBSD.
+We support big endian and little endian architectures.
+
+It may compile on Solaris derived systems (for instance SmartOS) but our
+support for this platform is "best effort" and Redis is not guaranteed to
+work as well as in Linux, OSX, and *BSD there.
+
It is as simple as:
% make
Allocator
---------
-By default Redis compiles and links against jemalloc under Linux, since
-glibc malloc() has memory fragmentation problems.
-
-To force a libc malloc() build use:
+Selecting 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.
- % make FORCE_LIBC_MALLOC=yes
+To force compiling against libc malloc, use:
-In all the other non Linux systems the libc malloc() is used by default.
+ % make MALLOC=libc
-On Mac OS X you can force a jemalloc based build using the following:
+To compile against jemalloc on Mac OS X systems, use:
- % make USE_JEMALLOC=yes
+ % make MALLOC=jemalloc
Verbose build
-------------
% cd src
% ./redis-server /path/to/redis.conf
+It is possible to alter the Redis configuration passing parameters directly
+as options using the command line. Examples:
+
+ % ./redis-server --port 9999 --slaveof 127.0.0.1 6379
+ % ./redis-server /etc/redis/6379.conf --loglevel debug
+
+All the options in redis.conf are also supported as options using the command
+line, with exactly the same name.
+
Playing with Redis
------------------