一、Redis的獲取與安裝,目前最新穩定版本爲4.0.10css
二、Redis版本號命名規則html
主版本號.次版本號.補丁版本號c++
在次版本號的位置上,偶數表明穩定發佈版本,如2.8,3.2,4.0,奇數表明測試版本git
三、下載源碼後,編譯安裝便可github
##以centos7.4 x64bit爲例redis
1 $ wget http://download.redis.io/releases/redis-4.0.10.tar.gz 2 $ tar xzf redis-4.0.10.tar.gz 3 $ cd redis-4.0.10 4 $ make
四、安裝過程sql
0x00-上傳源碼,解壓macos
[root@centos7 ~]# ls all.sql Desktop Downloads Music Public Templates anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures redis-4.0.10.tar.gz Videos [root@centos7 ~]# tar -xvf redis-4.0.10.tar.gz redis-4.0.10/ redis-4.0.10/.gitignore redis-4.0.10/00-RELEASENOTES redis-4.0.10/BUGS redis-4.0.10/CONTRIBUTING redis-4.0.10/COPYING redis-4.0.10/INSTALL redis-4.0.10/MANIFESTO redis-4.0.10/Makefile redis-4.0.10/README.md redis-4.0.10/deps/ redis-4.0.10/deps/Makefile redis-4.0.10/deps/README.md redis-4.0.10/deps/hiredis/ redis-4.0.10/deps/hiredis/.gitignore redis-4.0.10/deps/hiredis/.travis.yml redis-4.0.10/deps/hiredis/CHANGELOG.md redis-4.0.10/deps/hiredis/COPYING redis-4.0.10/deps/hiredis/Makefile redis-4.0.10/deps/hiredis/README.md redis-4.0.10/deps/hiredis/adapters/ redis-4.0.10/deps/hiredis/adapters/ae.h redis-4.0.10/deps/hiredis/adapters/glib.h redis-4.0.10/deps/hiredis/adapters/ivykis.h redis-4.0.10/deps/hiredis/adapters/libev.h redis-4.0.10/deps/hiredis/adapters/libevent.h redis-4.0.10/deps/hiredis/adapters/libuv.h redis-4.0.10/deps/hiredis/adapters/macosx.h redis-4.0.10/deps/hiredis/adapters/qt.h redis-4.0.10/deps/hiredis/appveyor.yml redis-4.0.10/deps/hiredis/async.c redis-4.0.10/deps/hiredis/async.h redis-4.0.10/deps/hiredis/dict.c redis-4.0.10/deps/hiredis/dict.h redis-4.0.10/deps/hiredis/examples/ redis-4.0.10/deps/hiredis/examples/example-ae.c redis-4.0.10/deps/hiredis/examples/example-glib.c redis-4.0.10/deps/hiredis/examples/example-ivykis.c redis-4.0.10/deps/hiredis/examples/example-libev.c redis-4.0.10/deps/hiredis/examples/example-libevent.c redis-4.0.10/deps/hiredis/examples/example-libuv.c redis-4.0.10/deps/hiredis/examples/example-macosx.c redis-4.0.10/deps/hiredis/examples/example-qt.cpp redis-4.0.10/deps/hiredis/examples/example-qt.h redis-4.0.10/deps/hiredis/examples/example.c redis-4.0.10/deps/hiredis/fmacros.h redis-4.0.10/deps/hiredis/hiredis.c redis-4.0.10/deps/hiredis/hiredis.h redis-4.0.10/deps/hiredis/net.c redis-4.0.10/deps/hiredis/net.h redis-4.0.10/deps/hiredis/read.c redis-4.0.10/deps/hiredis/read.h redis-4.0.10/deps/hiredis/sds.c redis-4.0.10/deps/hiredis/sds.h redis-4.0.10/deps/hiredis/sdsalloc.h redis-4.0.10/deps/hiredis/test.c redis-4.0.10/deps/hiredis/win32.h redis-4.0.10/deps/jemalloc/ redis-4.0.10/deps/jemalloc/.autom4te.cfg redis-4.0.10/deps/jemalloc/.gitattributes redis-4.0.10/deps/jemalloc/.gitignore redis-4.0.10/deps/jemalloc/COPYING redis-4.0.10/deps/jemalloc/ChangeLog redis-4.0.10/deps/jemalloc/INSTALL redis-4.0.10/deps/jemalloc/Makefile.in redis-4.0.10/deps/jemalloc/README redis-4.0.10/deps/jemalloc/VERSION redis-4.0.10/deps/jemalloc/autogen.sh redis-4.0.10/deps/jemalloc/bin/ redis-4.0.10/deps/jemalloc/bin/jemalloc-config.in redis-4.0.10/deps/jemalloc/bin/jemalloc.sh.in redis-4.0.10/deps/jemalloc/bin/jeprof.in redis-4.0.10/deps/jemalloc/config.guess redis-4.0.10/deps/jemalloc/config.stamp.in redis-4.0.10/deps/jemalloc/config.sub redis-4.0.10/deps/jemalloc/configure redis-4.0.10/deps/jemalloc/configure.ac redis-4.0.10/deps/jemalloc/coverage.sh redis-4.0.10/deps/jemalloc/doc/ redis-4.0.10/deps/jemalloc/doc/html.xsl.in redis-4.0.10/deps/jemalloc/doc/jemalloc.3 redis-4.0.10/deps/jemalloc/doc/jemalloc.html redis-4.0.10/deps/jemalloc/doc/jemalloc.xml.in redis-4.0.10/deps/jemalloc/doc/manpages.xsl.in redis-4.0.10/deps/jemalloc/doc/stylesheet.xsl redis-4.0.10/deps/jemalloc/include/ redis-4.0.10/deps/jemalloc/include/jemalloc/ redis-4.0.10/deps/jemalloc/include/jemalloc/internal/ redis-4.0.10/deps/jemalloc/include/jemalloc/internal/arena.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/atomic.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/base.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/bitmap.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/chunk.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/chunk_dss.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/chunk_mmap.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/ckh.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/ctl.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/extent.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/hash.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/huge.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal.h.in redis-4.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_decls.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h.in redis-4.0.10/deps/jemalloc/include/jemalloc/internal/jemalloc_internal_macros.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/mb.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/mutex.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/pages.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/private_namespace.sh redis-4.0.10/deps/jemalloc/include/jemalloc/internal/private_symbols.txt redis-4.0.10/deps/jemalloc/include/jemalloc/internal/private_unnamespace.sh redis-4.0.10/deps/jemalloc/include/jemalloc/internal/prng.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/prof.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/public_namespace.sh redis-4.0.10/deps/jemalloc/include/jemalloc/internal/public_unnamespace.sh redis-4.0.10/deps/jemalloc/include/jemalloc/internal/ql.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/qr.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/quarantine.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/rb.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/rtree.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/size_classes.sh redis-4.0.10/deps/jemalloc/include/jemalloc/internal/stats.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/tcache.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/tsd.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/util.h redis-4.0.10/deps/jemalloc/include/jemalloc/internal/valgrind.h redis-4.0.10/deps/jemalloc/include/jemalloc/jemalloc.sh redis-4.0.10/deps/jemalloc/include/jemalloc/jemalloc_defs.h.in redis-4.0.10/deps/jemalloc/include/jemalloc/jemalloc_macros.h.in redis-4.0.10/deps/jemalloc/include/jemalloc/jemalloc_mangle.sh redis-4.0.10/deps/jemalloc/include/jemalloc/jemalloc_protos.h.in redis-4.0.10/deps/jemalloc/include/jemalloc/jemalloc_rename.sh redis-4.0.10/deps/jemalloc/include/jemalloc/jemalloc_typedefs.h.in redis-4.0.10/deps/jemalloc/include/msvc_compat/ redis-4.0.10/deps/jemalloc/include/msvc_compat/C99/ redis-4.0.10/deps/jemalloc/include/msvc_compat/C99/stdbool.h redis-4.0.10/deps/jemalloc/include/msvc_compat/C99/stdint.h redis-4.0.10/deps/jemalloc/include/msvc_compat/strings.h redis-4.0.10/deps/jemalloc/include/msvc_compat/windows_extra.h redis-4.0.10/deps/jemalloc/install-sh redis-4.0.10/deps/jemalloc/jemalloc.pc.in redis-4.0.10/deps/jemalloc/src/ redis-4.0.10/deps/jemalloc/src/arena.c redis-4.0.10/deps/jemalloc/src/atomic.c redis-4.0.10/deps/jemalloc/src/base.c redis-4.0.10/deps/jemalloc/src/bitmap.c redis-4.0.10/deps/jemalloc/src/chunk.c redis-4.0.10/deps/jemalloc/src/chunk_dss.c redis-4.0.10/deps/jemalloc/src/chunk_mmap.c redis-4.0.10/deps/jemalloc/src/ckh.c redis-4.0.10/deps/jemalloc/src/ctl.c redis-4.0.10/deps/jemalloc/src/extent.c redis-4.0.10/deps/jemalloc/src/hash.c redis-4.0.10/deps/jemalloc/src/huge.c redis-4.0.10/deps/jemalloc/src/jemalloc.c redis-4.0.10/deps/jemalloc/src/mb.c redis-4.0.10/deps/jemalloc/src/mutex.c redis-4.0.10/deps/jemalloc/src/pages.c redis-4.0.10/deps/jemalloc/src/prof.c redis-4.0.10/deps/jemalloc/src/quarantine.c redis-4.0.10/deps/jemalloc/src/rtree.c redis-4.0.10/deps/jemalloc/src/stats.c redis-4.0.10/deps/jemalloc/src/tcache.c redis-4.0.10/deps/jemalloc/src/tsd.c redis-4.0.10/deps/jemalloc/src/util.c redis-4.0.10/deps/jemalloc/src/valgrind.c redis-4.0.10/deps/jemalloc/src/zone.c redis-4.0.10/deps/jemalloc/test/ redis-4.0.10/deps/jemalloc/test/include/ redis-4.0.10/deps/jemalloc/test/include/test/ redis-4.0.10/deps/jemalloc/test/include/test/SFMT-alti.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params11213.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params1279.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params132049.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params19937.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params216091.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params2281.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params4253.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params44497.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params607.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-params86243.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT-sse2.h redis-4.0.10/deps/jemalloc/test/include/test/SFMT.h redis-4.0.10/deps/jemalloc/test/include/test/btalloc.h redis-4.0.10/deps/jemalloc/test/include/test/jemalloc_test.h.in redis-4.0.10/deps/jemalloc/test/include/test/jemalloc_test_defs.h.in redis-4.0.10/deps/jemalloc/test/include/test/math.h redis-4.0.10/deps/jemalloc/test/include/test/mq.h redis-4.0.10/deps/jemalloc/test/include/test/mtx.h redis-4.0.10/deps/jemalloc/test/include/test/test.h redis-4.0.10/deps/jemalloc/test/include/test/thd.h redis-4.0.10/deps/jemalloc/test/include/test/timer.h redis-4.0.10/deps/jemalloc/test/integration/ redis-4.0.10/deps/jemalloc/test/integration/MALLOCX_ARENA.c redis-4.0.10/deps/jemalloc/test/integration/aligned_alloc.c redis-4.0.10/deps/jemalloc/test/integration/allocated.c redis-4.0.10/deps/jemalloc/test/integration/chunk.c redis-4.0.10/deps/jemalloc/test/integration/mallocx.c redis-4.0.10/deps/jemalloc/test/integration/overflow.c redis-4.0.10/deps/jemalloc/test/integration/posix_memalign.c redis-4.0.10/deps/jemalloc/test/integration/rallocx.c redis-4.0.10/deps/jemalloc/test/integration/sdallocx.c redis-4.0.10/deps/jemalloc/test/integration/thread_arena.c redis-4.0.10/deps/jemalloc/test/integration/thread_tcache_enabled.c redis-4.0.10/deps/jemalloc/test/integration/xallocx.c redis-4.0.10/deps/jemalloc/test/src/ redis-4.0.10/deps/jemalloc/test/src/SFMT.c redis-4.0.10/deps/jemalloc/test/src/btalloc.c redis-4.0.10/deps/jemalloc/test/src/btalloc_0.c redis-4.0.10/deps/jemalloc/test/src/btalloc_1.c redis-4.0.10/deps/jemalloc/test/src/math.c redis-4.0.10/deps/jemalloc/test/src/mq.c redis-4.0.10/deps/jemalloc/test/src/mtx.c redis-4.0.10/deps/jemalloc/test/src/test.c redis-4.0.10/deps/jemalloc/test/src/thd.c redis-4.0.10/deps/jemalloc/test/src/timer.c redis-4.0.10/deps/jemalloc/test/stress/ redis-4.0.10/deps/jemalloc/test/stress/microbench.c redis-4.0.10/deps/jemalloc/test/test.sh.in redis-4.0.10/deps/jemalloc/test/unit/ redis-4.0.10/deps/jemalloc/test/unit/SFMT.c redis-4.0.10/deps/jemalloc/test/unit/atomic.c redis-4.0.10/deps/jemalloc/test/unit/bitmap.c redis-4.0.10/deps/jemalloc/test/unit/ckh.c redis-4.0.10/deps/jemalloc/test/unit/hash.c redis-4.0.10/deps/jemalloc/test/unit/junk.c redis-4.0.10/deps/jemalloc/test/unit/junk_alloc.c redis-4.0.10/deps/jemalloc/test/unit/junk_free.c redis-4.0.10/deps/jemalloc/test/unit/lg_chunk.c redis-4.0.10/deps/jemalloc/test/unit/mallctl.c redis-4.0.10/deps/jemalloc/test/unit/math.c redis-4.0.10/deps/jemalloc/test/unit/mq.c redis-4.0.10/deps/jemalloc/test/unit/mtx.c redis-4.0.10/deps/jemalloc/test/unit/prof_accum.c redis-4.0.10/deps/jemalloc/test/unit/prof_active.c redis-4.0.10/deps/jemalloc/test/unit/prof_gdump.c redis-4.0.10/deps/jemalloc/test/unit/prof_idump.c redis-4.0.10/deps/jemalloc/test/unit/prof_reset.c redis-4.0.10/deps/jemalloc/test/unit/prof_thread_name.c redis-4.0.10/deps/jemalloc/test/unit/ql.c redis-4.0.10/deps/jemalloc/test/unit/qr.c redis-4.0.10/deps/jemalloc/test/unit/quarantine.c redis-4.0.10/deps/jemalloc/test/unit/rb.c redis-4.0.10/deps/jemalloc/test/unit/rtree.c redis-4.0.10/deps/jemalloc/test/unit/size_classes.c redis-4.0.10/deps/jemalloc/test/unit/stats.c redis-4.0.10/deps/jemalloc/test/unit/tsd.c redis-4.0.10/deps/jemalloc/test/unit/util.c redis-4.0.10/deps/jemalloc/test/unit/zero.c redis-4.0.10/deps/linenoise/ redis-4.0.10/deps/linenoise/.gitignore redis-4.0.10/deps/linenoise/Makefile redis-4.0.10/deps/linenoise/README.markdown redis-4.0.10/deps/linenoise/example.c redis-4.0.10/deps/linenoise/linenoise.c redis-4.0.10/deps/linenoise/linenoise.h redis-4.0.10/deps/lua/ redis-4.0.10/deps/lua/COPYRIGHT redis-4.0.10/deps/lua/HISTORY redis-4.0.10/deps/lua/INSTALL redis-4.0.10/deps/lua/Makefile redis-4.0.10/deps/lua/README redis-4.0.10/deps/lua/doc/ redis-4.0.10/deps/lua/doc/contents.html redis-4.0.10/deps/lua/doc/cover.png redis-4.0.10/deps/lua/doc/logo.gif redis-4.0.10/deps/lua/doc/lua.1 redis-4.0.10/deps/lua/doc/lua.css redis-4.0.10/deps/lua/doc/lua.html redis-4.0.10/deps/lua/doc/luac.1 redis-4.0.10/deps/lua/doc/luac.html redis-4.0.10/deps/lua/doc/manual.css redis-4.0.10/deps/lua/doc/manual.html redis-4.0.10/deps/lua/doc/readme.html redis-4.0.10/deps/lua/etc/ redis-4.0.10/deps/lua/etc/Makefile redis-4.0.10/deps/lua/etc/README redis-4.0.10/deps/lua/etc/all.c redis-4.0.10/deps/lua/etc/lua.hpp redis-4.0.10/deps/lua/etc/lua.ico redis-4.0.10/deps/lua/etc/lua.pc redis-4.0.10/deps/lua/etc/luavs.bat redis-4.0.10/deps/lua/etc/min.c redis-4.0.10/deps/lua/etc/noparser.c redis-4.0.10/deps/lua/etc/strict.lua redis-4.0.10/deps/lua/src/ redis-4.0.10/deps/lua/src/Makefile redis-4.0.10/deps/lua/src/fpconv.c redis-4.0.10/deps/lua/src/fpconv.h redis-4.0.10/deps/lua/src/lapi.c redis-4.0.10/deps/lua/src/lapi.h redis-4.0.10/deps/lua/src/lauxlib.c redis-4.0.10/deps/lua/src/lauxlib.h redis-4.0.10/deps/lua/src/lbaselib.c redis-4.0.10/deps/lua/src/lcode.c redis-4.0.10/deps/lua/src/lcode.h redis-4.0.10/deps/lua/src/ldblib.c redis-4.0.10/deps/lua/src/ldebug.c redis-4.0.10/deps/lua/src/ldebug.h redis-4.0.10/deps/lua/src/ldo.c redis-4.0.10/deps/lua/src/ldo.h redis-4.0.10/deps/lua/src/ldump.c redis-4.0.10/deps/lua/src/lfunc.c redis-4.0.10/deps/lua/src/lfunc.h redis-4.0.10/deps/lua/src/lgc.c redis-4.0.10/deps/lua/src/lgc.h redis-4.0.10/deps/lua/src/linit.c redis-4.0.10/deps/lua/src/liolib.c redis-4.0.10/deps/lua/src/llex.c redis-4.0.10/deps/lua/src/llex.h redis-4.0.10/deps/lua/src/llimits.h redis-4.0.10/deps/lua/src/lmathlib.c redis-4.0.10/deps/lua/src/lmem.c redis-4.0.10/deps/lua/src/lmem.h redis-4.0.10/deps/lua/src/loadlib.c redis-4.0.10/deps/lua/src/lobject.c redis-4.0.10/deps/lua/src/lobject.h redis-4.0.10/deps/lua/src/lopcodes.c redis-4.0.10/deps/lua/src/lopcodes.h redis-4.0.10/deps/lua/src/loslib.c redis-4.0.10/deps/lua/src/lparser.c redis-4.0.10/deps/lua/src/lparser.h redis-4.0.10/deps/lua/src/lstate.c redis-4.0.10/deps/lua/src/lstate.h redis-4.0.10/deps/lua/src/lstring.c redis-4.0.10/deps/lua/src/lstring.h redis-4.0.10/deps/lua/src/lstrlib.c redis-4.0.10/deps/lua/src/ltable.c redis-4.0.10/deps/lua/src/ltable.h redis-4.0.10/deps/lua/src/ltablib.c redis-4.0.10/deps/lua/src/ltm.c redis-4.0.10/deps/lua/src/ltm.h redis-4.0.10/deps/lua/src/lua.c redis-4.0.10/deps/lua/src/lua.h redis-4.0.10/deps/lua/src/lua_bit.c redis-4.0.10/deps/lua/src/lua_cjson.c redis-4.0.10/deps/lua/src/lua_cmsgpack.c redis-4.0.10/deps/lua/src/lua_struct.c redis-4.0.10/deps/lua/src/luac.c redis-4.0.10/deps/lua/src/luaconf.h redis-4.0.10/deps/lua/src/lualib.h redis-4.0.10/deps/lua/src/lundump.c redis-4.0.10/deps/lua/src/lundump.h redis-4.0.10/deps/lua/src/lvm.c redis-4.0.10/deps/lua/src/lvm.h redis-4.0.10/deps/lua/src/lzio.c redis-4.0.10/deps/lua/src/lzio.h redis-4.0.10/deps/lua/src/print.c redis-4.0.10/deps/lua/src/strbuf.c redis-4.0.10/deps/lua/src/strbuf.h redis-4.0.10/deps/lua/test/ redis-4.0.10/deps/lua/test/README redis-4.0.10/deps/lua/test/bisect.lua redis-4.0.10/deps/lua/test/cf.lua redis-4.0.10/deps/lua/test/echo.lua redis-4.0.10/deps/lua/test/env.lua redis-4.0.10/deps/lua/test/factorial.lua redis-4.0.10/deps/lua/test/fib.lua redis-4.0.10/deps/lua/test/fibfor.lua redis-4.0.10/deps/lua/test/globals.lua redis-4.0.10/deps/lua/test/hello.lua redis-4.0.10/deps/lua/test/life.lua redis-4.0.10/deps/lua/test/luac.lua redis-4.0.10/deps/lua/test/printf.lua redis-4.0.10/deps/lua/test/readonly.lua redis-4.0.10/deps/lua/test/sieve.lua redis-4.0.10/deps/lua/test/sort.lua redis-4.0.10/deps/lua/test/table.lua redis-4.0.10/deps/lua/test/trace-calls.lua redis-4.0.10/deps/lua/test/trace-globals.lua redis-4.0.10/deps/lua/test/xd.lua redis-4.0.10/deps/update-jemalloc.sh redis-4.0.10/redis.conf redis-4.0.10/runtest redis-4.0.10/runtest-cluster redis-4.0.10/runtest-sentinel redis-4.0.10/sentinel.conf redis-4.0.10/src/ redis-4.0.10/src/.gitignore redis-4.0.10/src/Makefile redis-4.0.10/src/adlist.c redis-4.0.10/src/adlist.h redis-4.0.10/src/ae.c redis-4.0.10/src/ae.h redis-4.0.10/src/ae_epoll.c redis-4.0.10/src/ae_evport.c redis-4.0.10/src/ae_kqueue.c redis-4.0.10/src/ae_select.c redis-4.0.10/src/anet.c redis-4.0.10/src/anet.h redis-4.0.10/src/aof.c redis-4.0.10/src/asciilogo.h redis-4.0.10/src/atomicvar.h redis-4.0.10/src/bio.c redis-4.0.10/src/bio.h redis-4.0.10/src/bitops.c redis-4.0.10/src/blocked.c redis-4.0.10/src/childinfo.c redis-4.0.10/src/cluster.c redis-4.0.10/src/cluster.h redis-4.0.10/src/config.c redis-4.0.10/src/config.h redis-4.0.10/src/crc16.c redis-4.0.10/src/crc64.c redis-4.0.10/src/crc64.h redis-4.0.10/src/db.c redis-4.0.10/src/debug.c redis-4.0.10/src/debugmacro.h redis-4.0.10/src/defrag.c redis-4.0.10/src/dict.c redis-4.0.10/src/dict.h redis-4.0.10/src/endianconv.c redis-4.0.10/src/endianconv.h redis-4.0.10/src/evict.c redis-4.0.10/src/expire.c redis-4.0.10/src/fmacros.h redis-4.0.10/src/geo.c redis-4.0.10/src/geo.h redis-4.0.10/src/geohash.c redis-4.0.10/src/geohash.h redis-4.0.10/src/geohash_helper.c redis-4.0.10/src/geohash_helper.h redis-4.0.10/src/help.h redis-4.0.10/src/hyperloglog.c redis-4.0.10/src/intset.c redis-4.0.10/src/intset.h redis-4.0.10/src/latency.c redis-4.0.10/src/latency.h redis-4.0.10/src/lazyfree.c redis-4.0.10/src/lzf.h redis-4.0.10/src/lzfP.h redis-4.0.10/src/lzf_c.c redis-4.0.10/src/lzf_d.c redis-4.0.10/src/memtest.c redis-4.0.10/src/mkreleasehdr.sh redis-4.0.10/src/module.c redis-4.0.10/src/modules/ redis-4.0.10/src/modules/.gitignore redis-4.0.10/src/modules/Makefile redis-4.0.10/src/modules/gendoc.rb redis-4.0.10/src/modules/helloblock.c redis-4.0.10/src/modules/hellotype.c redis-4.0.10/src/modules/helloworld.c redis-4.0.10/src/modules/testmodule.c redis-4.0.10/src/multi.c redis-4.0.10/src/networking.c redis-4.0.10/src/notify.c redis-4.0.10/src/object.c redis-4.0.10/src/pqsort.c redis-4.0.10/src/pqsort.h redis-4.0.10/src/pubsub.c redis-4.0.10/src/quicklist.c redis-4.0.10/src/quicklist.h redis-4.0.10/src/rand.c redis-4.0.10/src/rand.h redis-4.0.10/src/rax.c redis-4.0.10/src/rax.h redis-4.0.10/src/rax_malloc.h redis-4.0.10/src/rdb.c redis-4.0.10/src/rdb.h redis-4.0.10/src/redis-benchmark.c redis-4.0.10/src/redis-check-aof.c redis-4.0.10/src/redis-check-rdb.c redis-4.0.10/src/redis-cli.c redis-4.0.10/src/redis-trib.rb redis-4.0.10/src/redisassert.h redis-4.0.10/src/redismodule.h redis-4.0.10/src/release.c redis-4.0.10/src/replication.c redis-4.0.10/src/rio.c redis-4.0.10/src/rio.h redis-4.0.10/src/scripting.c redis-4.0.10/src/sds.c redis-4.0.10/src/sds.h redis-4.0.10/src/sdsalloc.h redis-4.0.10/src/sentinel.c redis-4.0.10/src/server.c redis-4.0.10/src/server.h redis-4.0.10/src/setproctitle.c redis-4.0.10/src/sha1.c redis-4.0.10/src/sha1.h redis-4.0.10/src/siphash.c redis-4.0.10/src/slowlog.c redis-4.0.10/src/slowlog.h redis-4.0.10/src/solarisfixes.h redis-4.0.10/src/sort.c redis-4.0.10/src/sparkline.c redis-4.0.10/src/sparkline.h redis-4.0.10/src/syncio.c redis-4.0.10/src/t_hash.c redis-4.0.10/src/t_list.c redis-4.0.10/src/t_set.c redis-4.0.10/src/t_string.c redis-4.0.10/src/t_zset.c redis-4.0.10/src/testhelp.h redis-4.0.10/src/util.c redis-4.0.10/src/util.h redis-4.0.10/src/valgrind.sup redis-4.0.10/src/version.h redis-4.0.10/src/ziplist.c redis-4.0.10/src/ziplist.h redis-4.0.10/src/zipmap.c redis-4.0.10/src/zipmap.h redis-4.0.10/src/zmalloc.c redis-4.0.10/src/zmalloc.h redis-4.0.10/tests/ redis-4.0.10/tests/assets/ redis-4.0.10/tests/assets/default.conf redis-4.0.10/tests/assets/encodings.rdb redis-4.0.10/tests/assets/hash-zipmap.rdb redis-4.0.10/tests/cluster/ redis-4.0.10/tests/cluster/cluster.tcl redis-4.0.10/tests/cluster/run.tcl redis-4.0.10/tests/cluster/tests/ redis-4.0.10/tests/cluster/tests/00-base.tcl redis-4.0.10/tests/cluster/tests/01-faildet.tcl redis-4.0.10/tests/cluster/tests/02-failover.tcl redis-4.0.10/tests/cluster/tests/03-failover-loop.tcl redis-4.0.10/tests/cluster/tests/04-resharding.tcl redis-4.0.10/tests/cluster/tests/05-slave-selection.tcl redis-4.0.10/tests/cluster/tests/06-slave-stop-cond.tcl redis-4.0.10/tests/cluster/tests/07-replica-migration.tcl redis-4.0.10/tests/cluster/tests/08-update-msg.tcl redis-4.0.10/tests/cluster/tests/09-pubsub.tcl redis-4.0.10/tests/cluster/tests/10-manual-failover.tcl redis-4.0.10/tests/cluster/tests/11-manual-takeover.tcl redis-4.0.10/tests/cluster/tests/12-replica-migration-2.tcl redis-4.0.10/tests/cluster/tests/13-no-failover-option.tcl redis-4.0.10/tests/cluster/tests/helpers/ redis-4.0.10/tests/cluster/tests/helpers/onlydots.tcl redis-4.0.10/tests/cluster/tests/includes/ redis-4.0.10/tests/cluster/tests/includes/init-tests.tcl redis-4.0.10/tests/cluster/tmp/ redis-4.0.10/tests/cluster/tmp/.gitignore redis-4.0.10/tests/helpers/ redis-4.0.10/tests/helpers/bg_complex_data.tcl redis-4.0.10/tests/helpers/gen_write_load.tcl redis-4.0.10/tests/instances.tcl redis-4.0.10/tests/integration/ redis-4.0.10/tests/integration/aof-race.tcl redis-4.0.10/tests/integration/aof.tcl redis-4.0.10/tests/integration/convert-zipmap-hash-on-load.tcl redis-4.0.10/tests/integration/logging.tcl redis-4.0.10/tests/integration/psync2-reg.tcl redis-4.0.10/tests/integration/psync2.tcl redis-4.0.10/tests/integration/rdb.tcl redis-4.0.10/tests/integration/redis-cli.tcl redis-4.0.10/tests/integration/replication-2.tcl redis-4.0.10/tests/integration/replication-3.tcl redis-4.0.10/tests/integration/replication-4.tcl redis-4.0.10/tests/integration/replication-psync.tcl redis-4.0.10/tests/integration/replication.tcl redis-4.0.10/tests/sentinel/ redis-4.0.10/tests/sentinel/run.tcl redis-4.0.10/tests/sentinel/tests/ redis-4.0.10/tests/sentinel/tests/00-base.tcl redis-4.0.10/tests/sentinel/tests/01-conf-update.tcl redis-4.0.10/tests/sentinel/tests/02-slaves-reconf.tcl redis-4.0.10/tests/sentinel/tests/03-runtime-reconf.tcl redis-4.0.10/tests/sentinel/tests/04-slave-selection.tcl redis-4.0.10/tests/sentinel/tests/05-manual.tcl redis-4.0.10/tests/sentinel/tests/06-ckquorum.tcl redis-4.0.10/tests/sentinel/tests/07-down-conditions.tcl redis-4.0.10/tests/sentinel/tests/includes/ redis-4.0.10/tests/sentinel/tests/includes/init-tests.tcl redis-4.0.10/tests/sentinel/tmp/ redis-4.0.10/tests/sentinel/tmp/.gitignore redis-4.0.10/tests/support/ redis-4.0.10/tests/support/cluster.tcl redis-4.0.10/tests/support/redis.tcl redis-4.0.10/tests/support/server.tcl redis-4.0.10/tests/support/test.tcl redis-4.0.10/tests/support/tmpfile.tcl redis-4.0.10/tests/support/util.tcl redis-4.0.10/tests/test_helper.tcl redis-4.0.10/tests/tmp/ redis-4.0.10/tests/tmp/.gitignore redis-4.0.10/tests/unit/ redis-4.0.10/tests/unit/aofrw.tcl redis-4.0.10/tests/unit/auth.tcl redis-4.0.10/tests/unit/bitfield.tcl redis-4.0.10/tests/unit/bitops.tcl redis-4.0.10/tests/unit/dump.tcl redis-4.0.10/tests/unit/expire.tcl redis-4.0.10/tests/unit/geo.tcl redis-4.0.10/tests/unit/hyperloglog.tcl redis-4.0.10/tests/unit/introspection-2.tcl redis-4.0.10/tests/unit/introspection.tcl redis-4.0.10/tests/unit/keyspace.tcl redis-4.0.10/tests/unit/latency-monitor.tcl redis-4.0.10/tests/unit/lazyfree.tcl redis-4.0.10/tests/unit/limits.tcl redis-4.0.10/tests/unit/maxmemory.tcl redis-4.0.10/tests/unit/memefficiency.tcl redis-4.0.10/tests/unit/multi.tcl redis-4.0.10/tests/unit/obuf-limits.tcl redis-4.0.10/tests/unit/other.tcl redis-4.0.10/tests/unit/printver.tcl redis-4.0.10/tests/unit/protocol.tcl redis-4.0.10/tests/unit/pubsub.tcl redis-4.0.10/tests/unit/quit.tcl redis-4.0.10/tests/unit/scan.tcl redis-4.0.10/tests/unit/scripting.tcl redis-4.0.10/tests/unit/slowlog.tcl redis-4.0.10/tests/unit/sort.tcl redis-4.0.10/tests/unit/type/ redis-4.0.10/tests/unit/type/hash.tcl redis-4.0.10/tests/unit/type/incr.tcl redis-4.0.10/tests/unit/type/list-2.tcl redis-4.0.10/tests/unit/type/list-3.tcl redis-4.0.10/tests/unit/type/list-common.tcl redis-4.0.10/tests/unit/type/list.tcl redis-4.0.10/tests/unit/type/set.tcl redis-4.0.10/tests/unit/type/string.tcl redis-4.0.10/tests/unit/type/zset.tcl redis-4.0.10/tests/unit/wait.tcl redis-4.0.10/utils/ redis-4.0.10/utils/build-static-symbols.tcl redis-4.0.10/utils/cluster_fail_time.tcl redis-4.0.10/utils/corrupt_rdb.c redis-4.0.10/utils/create-cluster/ redis-4.0.10/utils/create-cluster/.gitignore redis-4.0.10/utils/create-cluster/README redis-4.0.10/utils/create-cluster/create-cluster redis-4.0.10/utils/generate-command-help.rb redis-4.0.10/utils/graphs/ redis-4.0.10/utils/graphs/commits-over-time/ redis-4.0.10/utils/graphs/commits-over-time/README.md redis-4.0.10/utils/graphs/commits-over-time/genhtml.tcl redis-4.0.10/utils/hashtable/ redis-4.0.10/utils/hashtable/README redis-4.0.10/utils/hashtable/rehashing.c redis-4.0.10/utils/hyperloglog/ redis-4.0.10/utils/hyperloglog/.gitignore redis-4.0.10/utils/hyperloglog/hll-err.rb redis-4.0.10/utils/hyperloglog/hll-gnuplot-graph.rb redis-4.0.10/utils/install_server.sh redis-4.0.10/utils/lru/ redis-4.0.10/utils/lru/README redis-4.0.10/utils/lru/lfu-simulation.c redis-4.0.10/utils/lru/test-lru.rb redis-4.0.10/utils/redis-copy.rb redis-4.0.10/utils/redis-sha1.rb redis-4.0.10/utils/redis_init_script redis-4.0.10/utils/redis_init_script.tpl redis-4.0.10/utils/releasetools/ redis-4.0.10/utils/releasetools/01_create_tarball.sh redis-4.0.10/utils/releasetools/02_upload_tarball.sh redis-4.0.10/utils/releasetools/03_test_release.sh redis-4.0.10/utils/releasetools/04_release_hash.sh redis-4.0.10/utils/releasetools/changelog.tcl redis-4.0.10/utils/speed-regression.tcl redis-4.0.10/utils/whatisdoing.sh
0x01-編譯json
[root@centos7 ~]# cd redis-4.0.10/ [root@centos7 redis-4.0.10]# ls 00-RELEASENOTES CONTRIBUTING deps Makefile README.md runtest runtest-sentinel src utils BUGS COPYING INSTALL MANIFESTO redis.conf runtest-cluster sentinel.conf tests [root@centos7 redis-4.0.10]# make cd src && make all make[1]: Entering directory `/root/redis-4.0.10/src' CC Makefile.dep make[1]: Leaving directory `/root/redis-4.0.10/src' make[1]: Entering directory `/root/redis-4.0.10/src' rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-rdb redis-check-aof *.o *.gcda *.gcno *.gcov redis.info lcov-html Makefile.dep dict-benchmark (cd ../deps && make distclean) make[2]: Entering directory `/root/redis-4.0.10/deps' (cd hiredis && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (rm -f .make-*) make[2]: Leaving directory `/root/redis-4.0.10/deps' (rm -f .make-*) echo STD=-std=c99 -pedantic -DREDIS_STATIC='' >> .make-settings echo WARN=-Wall -W -Wno-missing-field-initializers >> .make-settings echo OPT=-O2 >> .make-settings echo MALLOC=jemalloc >> .make-settings echo CFLAGS= >> .make-settings echo LDFLAGS= >> .make-settings echo REDIS_CFLAGS= >> .make-settings echo REDIS_LDFLAGS= >> .make-settings echo PREV_FINAL_CFLAGS=-std=c99 -pedantic -DREDIS_STATIC='' -Wall -W -Wno-missing-field-initializers -O2 -g -ggdb -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -DUSE_JEMALLOC -I../deps/jemalloc/include >> .make-settings echo PREV_FINAL_LDFLAGS= -g -ggdb -rdynamic >> .make-settings (cd ../deps && make hiredis linenoise lua jemalloc) make[2]: Entering directory `/root/redis-4.0.10/deps' (cd hiredis && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (rm -f .make-*) (echo "" > .make-cflags) (echo "" > .make-ldflags) MAKE hiredis cd hiredis && make static make[3]: Entering directory `/root/redis-4.0.10/deps/hiredis' gcc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c make[3]: gcc: Command not found make[3]: *** [net.o] Error 127 make[3]: Leaving directory `/root/redis-4.0.10/deps/hiredis' make[2]: *** [hiredis] Error 2 make[2]: Leaving directory `/root/redis-4.0.10/deps' make[1]: [persist-settings] Error 2 (ignored) CC adlist.o /bin/sh: cc: command not found make[1]: *** [adlist.o] Error 127 make[1]: Leaving directory `/root/redis-4.0.10/src' make: *** [all] Error 2
make編譯報錯現象:windows
[root@centos7 redis-4.0.10]# make
cd src && make all
make[1]: Entering directory `/root/redis-4.0.10/src'
CC adlist.o
/bin/sh: cc: command not found
緣由:Centos默認未安裝gcc相關包,須要手動安裝
解決方案:按照提示,缺乏gcc相關包,手動安裝
gcc gcc-c++ libstdc++-devel
then,繼續編譯,出現報錯現象2
[root@centos7 redis-4.0.10]# make cd src && make all make[1]: Entering directory `/root/redis-4.0.10/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-4.0.10/src' make: *** [all] Error 2
緣由:jemalloc重載了Linux下的ANSI C的malloc和free函數。在redis的README中,有以下描述:
Allocator ——— 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 Linuxsystems. 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環境變量,則使用MALLOC環境標量去創建Redis,可是libc並非默認的分配器,默認分配器爲Jemalloc,可是目前系統內並無Jemalloc,因此須要在make編譯時,加上MALLOC=libc,強制修改默認分配器進行編譯。
解決方案:在make時,指定分配器參數:MALLOC
[root@centos7 redis-4.0.10]# make MALLOC=libc cd src && make all make[1]: Entering directory `/root/redis-4.0.10/src' edis.info lcov-html Makefile.dep dict-benchmark (cd ../deps && make distclean) make[2]: Entering directory `/root/redis-4.0.10/deps' (cd hiredis && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (rm -f .make-*) make[2]: Leaving directory `/root/redis-4.0.10/deps' (rm -f .make-*) echo STD=-std=c99 -pedantic -DREDIS_STATIC= >> .make-settings echo WARN=-Wall -W -Wno-missing-field-initializers >> .make-settings echo OPT=-O2 >> .make-settings echo MALLOC=libc >> .make-settings echo CFLAGS= >> .make-settings echo LDFLAGS= >> .make-settings echo REDIS_CFLAGS= >> .make-settings echo REDIS_LDFLAGS= >> .make-settings deps/hiredis -I../deps/linenoise -I../deps/lua/src >> .make-settings echo PREV_FINAL_LDFLAGS= -g -ggdb -rdynamic >> .make-settings (cd ../deps && make hiredis linenoise lua) make[2]: Entering directory `/root/redis-4.0.10/deps' (cd hiredis && make clean) > /dev/null || true (cd linenoise && make clean) > /dev/null || true (cd lua && make clean) > /dev/null || true (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true (rm -f .make-*) (echo "" > .make-cflags) (echo "" > .make-ldflags) MAKE hiredis cd hiredis && make static make[3]: Entering directory `/root/redis-4.0.10/deps/hiredis' cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb hiredis.c cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb sds.c cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb async.c cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb read.c ar rcs libhiredis.a net.o hiredis.o sds.o async.o read.o make[3]: Leaving directory `/root/redis-4.0.10/deps/hiredis' MAKE linenoise cd linenoise && make make[3]: Entering directory `/root/redis-4.0.10/deps/linenoise' cc -Wall -Os -g -c linenoise.c make[3]: Leaving directory `/root/redis-4.0.10/deps/linenoise' MAKE lua cd lua/src && make all CFLAGS="-O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' " MYLDFLAGS="" AR="ar rcu" make[3]: Entering directory `/root/redis-4.0.10/deps/lua/src' cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lapi.o lapi.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lcode.o lcode.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldebug.o ldebug.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldo.o ldo.c ldo.c: In function ‘f_parser’: ldo.c:496:7: warning: unused variable ‘c’ [-Wunused-variable] int c = luaZ_lookahead(p->z); ^ cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldump.o ldump.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lfunc.o lfunc.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lgc.o lgc.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o llex.o llex.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lmem.o lmem.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lobject.o lobject.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lopcodes.o lopcodes.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lparser.o lparser.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lstate.o lstate.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lstring.o lstring.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ltable.o ltable.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ltm.o ltm.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lundump.o lundump.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lvm.o lvm.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lzio.o lzio.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o strbuf.o strbuf.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o fpconv.o fpconv.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lauxlib.o lauxlib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lbaselib.o lbaselib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldblib.o ldblib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o liolib.o liolib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lmathlib.o lmathlib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o loslib.o loslib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ltablib.o ltablib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lstrlib.o lstrlib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o loadlib.o loadlib.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o linit.o linit.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua_cjson.o lua_cjson.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua_struct.o lua_struct.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua_cmsgpack.o lua_cmsgpack.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua_bit.o lua_bit.c object files ranlib liblua.a cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua.o lua.c cc -o lua lua.o liblua.a -lm liblua.a(loslib.o): In function `os_tmpname': loslib.c:(.text+0x28c): warning: the use of `tmpnam' is dangerous, better use `mkstemp' cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o luac.o luac.c cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o print.o print.c cc -o luac luac.o print.o liblua.a -lm make[3]: Leaving directory `/root/redis-4.0.10/deps/lua/src' make[2]: Leaving directory `/root/redis-4.0.10/deps' CC adlist.o CC quicklist.o CC ae.o CC anet.o CC dict.o CC server.o CC sds.o CC zmalloc.o CC lzf_c.o CC lzf_d.o CC pqsort.o CC zipmap.o CC sha1.o CC ziplist.o CC release.o CC networking.o CC util.o CC object.o CC db.o CC replication.o CC rdb.o CC t_string.o CC t_list.o CC t_set.o CC t_zset.o CC t_hash.o CC config.o CC aof.o CC pubsub.o CC multi.o CC debug.o CC sort.o CC intset.o CC syncio.o CC cluster.o CC crc16.o CC endianconv.o CC slowlog.o CC scripting.o CC bio.o CC rio.o CC rand.o CC memtest.o CC crc64.o CC bitops.o CC sentinel.o CC notify.o CC setproctitle.o CC blocked.o CC hyperloglog.o CC latency.o CC sparkline.o CC redis-check-rdb.o CC redis-check-aof.o CC geo.o CC lazyfree.o CC module.o CC evict.o CC expire.o CC geohash.o CC geohash_helper.o CC childinfo.o CC defrag.o CC siphash.o CC rax.o LINK redis-server INSTALL redis-sentinel CC redis-cli.o LINK redis-cli CC redis-benchmark.o LINK redis-benchmark INSTALL redis-check-rdb INSTALL redis-check-aof Hint: It's a good idea to run 'make test' ;) make[1]: Leaving directory `/root/redis-4.0.10/src'
0x02-安裝--make install
[root@centos7 redis-4.0.10]# make install cd src && make install make[1]: Entering directory `/root/redis-4.0.10/src' CC Makefile.dep make[1]: Leaving directory `/root/redis-4.0.10/src' make[1]: Entering directory `/root/redis-4.0.10/src' Hint: It's a good idea to run 'make test' ;) INSTALL install INSTALL install INSTALL install INSTALL install INSTALL install make[1]: Leaving directory `/root/redis-4.0.10/src'
0x03-各個系統版本啓動: