1、Redis的获取与安装,目前最新稳定版本为4.0.10

  • Redis:  https://redis.io/download
  • GitHub:  https://github.com/antirez/redis
  • Google Code: https://code.google.com/p/redis/downloads/list?can=1
  • Windows :https://github.com/dmajkic/redis/downloads

2、Redis版本号命名规则

主版本号.次版本号.补丁版本号

在次版本号的位置上,偶数代表稳定发布版本,如2.8,3.2,4.0,奇数代表测试版本

3、下载源码后,编译安装即可

##以centos7.4 x64bit为例

  1. $ wget http://download.redis.io/releases/redis-4.0.10.tar.gz
  2. $ tar xzf redis-4.0..tar.gz
  3. $ cd redis-4.0.
  4. $ make

4、安装过程

0x00-上传源码,解压

  1. [root@centos7 ~]# ls
  2. all.sql Desktop Downloads Music Public Templates
  3. anaconda-ks.cfg Documents initial-setup-ks.cfg Pictures redis-4.0..tar.gz Videos
  4.  
  5. [root@centos7 ~]# tar -xvf redis-4.0..tar.gz
  6. redis-4.0./
  7. redis-4.0./.gitignore
  8. redis-4.0./-RELEASENOTES
  9. redis-4.0./BUGS
  10. redis-4.0./CONTRIBUTING
  11. redis-4.0./COPYING
  12. redis-4.0./INSTALL
  13. redis-4.0./MANIFESTO
  14. redis-4.0./Makefile
  15. redis-4.0./README.md
  16. redis-4.0./deps/
  17. redis-4.0./deps/Makefile
  18. redis-4.0./deps/README.md
  19. redis-4.0./deps/hiredis/
  20. redis-4.0./deps/hiredis/.gitignore
  21. redis-4.0./deps/hiredis/.travis.yml
  22. redis-4.0./deps/hiredis/CHANGELOG.md
  23. redis-4.0./deps/hiredis/COPYING
  24. redis-4.0./deps/hiredis/Makefile
  25. redis-4.0./deps/hiredis/README.md
  26. redis-4.0./deps/hiredis/adapters/
  27. redis-4.0./deps/hiredis/adapters/ae.h
  28. redis-4.0./deps/hiredis/adapters/glib.h
  29. redis-4.0./deps/hiredis/adapters/ivykis.h
  30. redis-4.0./deps/hiredis/adapters/libev.h
  31. redis-4.0./deps/hiredis/adapters/libevent.h
  32. redis-4.0./deps/hiredis/adapters/libuv.h
  33. redis-4.0./deps/hiredis/adapters/macosx.h
  34. redis-4.0./deps/hiredis/adapters/qt.h
  35. redis-4.0./deps/hiredis/appveyor.yml
  36. redis-4.0./deps/hiredis/async.c
  37. redis-4.0./deps/hiredis/async.h
  38. redis-4.0./deps/hiredis/dict.c
  39. redis-4.0./deps/hiredis/dict.h
  40. redis-4.0./deps/hiredis/examples/
  41. redis-4.0./deps/hiredis/examples/example-ae.c
  42. redis-4.0./deps/hiredis/examples/example-glib.c
  43. redis-4.0./deps/hiredis/examples/example-ivykis.c
  44. redis-4.0./deps/hiredis/examples/example-libev.c
  45. redis-4.0./deps/hiredis/examples/example-libevent.c
  46. redis-4.0./deps/hiredis/examples/example-libuv.c
  47. redis-4.0./deps/hiredis/examples/example-macosx.c
  48. redis-4.0./deps/hiredis/examples/example-qt.cpp
  49. redis-4.0./deps/hiredis/examples/example-qt.h
  50. redis-4.0./deps/hiredis/examples/example.c
  51. redis-4.0./deps/hiredis/fmacros.h
  52. redis-4.0./deps/hiredis/hiredis.c
  53. redis-4.0./deps/hiredis/hiredis.h
  54. redis-4.0./deps/hiredis/net.c
  55. redis-4.0./deps/hiredis/net.h
  56. redis-4.0./deps/hiredis/read.c
  57. redis-4.0./deps/hiredis/read.h
  58. redis-4.0./deps/hiredis/sds.c
  59. redis-4.0./deps/hiredis/sds.h
  60. redis-4.0./deps/hiredis/sdsalloc.h
  61. redis-4.0./deps/hiredis/test.c
  62. redis-4.0./deps/hiredis/win32.h
  63. redis-4.0./deps/jemalloc/
  64. redis-4.0./deps/jemalloc/.autom4te.cfg
  65. redis-4.0./deps/jemalloc/.gitattributes
  66. redis-4.0./deps/jemalloc/.gitignore
  67. redis-4.0./deps/jemalloc/COPYING
  68. redis-4.0./deps/jemalloc/ChangeLog
  69. redis-4.0./deps/jemalloc/INSTALL
  70. redis-4.0./deps/jemalloc/Makefile.in
  71. redis-4.0./deps/jemalloc/README
  72. redis-4.0./deps/jemalloc/VERSION
  73. redis-4.0./deps/jemalloc/autogen.sh
  74. redis-4.0./deps/jemalloc/bin/
  75. redis-4.0./deps/jemalloc/bin/jemalloc-config.in
  76. redis-4.0./deps/jemalloc/bin/jemalloc.sh.in
  77. redis-4.0./deps/jemalloc/bin/jeprof.in
  78. redis-4.0./deps/jemalloc/config.guess
  79. redis-4.0./deps/jemalloc/config.stamp.in
  80. redis-4.0./deps/jemalloc/config.sub
  81. redis-4.0./deps/jemalloc/configure
  82. redis-4.0./deps/jemalloc/configure.ac
  83. redis-4.0./deps/jemalloc/coverage.sh
  84. redis-4.0./deps/jemalloc/doc/
  85. redis-4.0./deps/jemalloc/doc/html.xsl.in
  86. redis-4.0./deps/jemalloc/doc/jemalloc.
  87. redis-4.0./deps/jemalloc/doc/jemalloc.html
  88. redis-4.0./deps/jemalloc/doc/jemalloc.xml.in
  89. redis-4.0./deps/jemalloc/doc/manpages.xsl.in
  90. redis-4.0./deps/jemalloc/doc/stylesheet.xsl
  91. redis-4.0./deps/jemalloc/include/
  92. redis-4.0./deps/jemalloc/include/jemalloc/
  93. redis-4.0./deps/jemalloc/include/jemalloc/internal/
  94. redis-4.0./deps/jemalloc/include/jemalloc/internal/arena.h
  95. redis-4.0./deps/jemalloc/include/jemalloc/internal/atomic.h
  96. redis-4.0./deps/jemalloc/include/jemalloc/internal/base.h
  97. redis-4.0./deps/jemalloc/include/jemalloc/internal/bitmap.h
  98. redis-4.0./deps/jemalloc/include/jemalloc/internal/chunk.h
  99. redis-4.0./deps/jemalloc/include/jemalloc/internal/chunk_dss.h
  100. redis-4.0./deps/jemalloc/include/jemalloc/internal/chunk_mmap.h
  101. redis-4.0./deps/jemalloc/include/jemalloc/internal/ckh.h
  102. redis-4.0./deps/jemalloc/include/jemalloc/internal/ctl.h
  103. redis-4.0./deps/jemalloc/include/jemalloc/internal/extent.h
  104. redis-4.0./deps/jemalloc/include/jemalloc/internal/hash.h
  105. redis-4.0./deps/jemalloc/include/jemalloc/internal/huge.h
  106. redis-4.0./deps/jemalloc/include/jemalloc/internal/jemalloc_internal.h.in
  107. redis-4.0./deps/jemalloc/include/jemalloc/internal/jemalloc_internal_decls.h
  108. redis-4.0./deps/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h.in
  109. redis-4.0./deps/jemalloc/include/jemalloc/internal/jemalloc_internal_macros.h
  110. redis-4.0./deps/jemalloc/include/jemalloc/internal/mb.h
  111. redis-4.0./deps/jemalloc/include/jemalloc/internal/mutex.h
  112. redis-4.0./deps/jemalloc/include/jemalloc/internal/pages.h
  113. redis-4.0./deps/jemalloc/include/jemalloc/internal/private_namespace.sh
  114. redis-4.0./deps/jemalloc/include/jemalloc/internal/private_symbols.txt
  115. redis-4.0./deps/jemalloc/include/jemalloc/internal/private_unnamespace.sh
  116. redis-4.0./deps/jemalloc/include/jemalloc/internal/prng.h
  117. redis-4.0./deps/jemalloc/include/jemalloc/internal/prof.h
  118. redis-4.0./deps/jemalloc/include/jemalloc/internal/public_namespace.sh
  119. redis-4.0./deps/jemalloc/include/jemalloc/internal/public_unnamespace.sh
  120. redis-4.0./deps/jemalloc/include/jemalloc/internal/ql.h
  121. redis-4.0./deps/jemalloc/include/jemalloc/internal/qr.h
  122. redis-4.0./deps/jemalloc/include/jemalloc/internal/quarantine.h
  123. redis-4.0./deps/jemalloc/include/jemalloc/internal/rb.h
  124. redis-4.0./deps/jemalloc/include/jemalloc/internal/rtree.h
  125. redis-4.0./deps/jemalloc/include/jemalloc/internal/size_classes.sh
  126. redis-4.0./deps/jemalloc/include/jemalloc/internal/stats.h
  127. redis-4.0./deps/jemalloc/include/jemalloc/internal/tcache.h
  128. redis-4.0./deps/jemalloc/include/jemalloc/internal/tsd.h
  129. redis-4.0./deps/jemalloc/include/jemalloc/internal/util.h
  130. redis-4.0./deps/jemalloc/include/jemalloc/internal/valgrind.h
  131. redis-4.0./deps/jemalloc/include/jemalloc/jemalloc.sh
  132. redis-4.0./deps/jemalloc/include/jemalloc/jemalloc_defs.h.in
  133. redis-4.0./deps/jemalloc/include/jemalloc/jemalloc_macros.h.in
  134. redis-4.0./deps/jemalloc/include/jemalloc/jemalloc_mangle.sh
  135. redis-4.0./deps/jemalloc/include/jemalloc/jemalloc_protos.h.in
  136. redis-4.0./deps/jemalloc/include/jemalloc/jemalloc_rename.sh
  137. redis-4.0./deps/jemalloc/include/jemalloc/jemalloc_typedefs.h.in
  138. redis-4.0./deps/jemalloc/include/msvc_compat/
  139. redis-4.0./deps/jemalloc/include/msvc_compat/C99/
  140. redis-4.0./deps/jemalloc/include/msvc_compat/C99/stdbool.h
  141. redis-4.0./deps/jemalloc/include/msvc_compat/C99/stdint.h
  142. redis-4.0./deps/jemalloc/include/msvc_compat/strings.h
  143. redis-4.0./deps/jemalloc/include/msvc_compat/windows_extra.h
  144. redis-4.0./deps/jemalloc/install-sh
  145. redis-4.0./deps/jemalloc/jemalloc.pc.in
  146. redis-4.0./deps/jemalloc/src/
  147. redis-4.0./deps/jemalloc/src/arena.c
  148. redis-4.0./deps/jemalloc/src/atomic.c
  149. redis-4.0./deps/jemalloc/src/base.c
  150. redis-4.0./deps/jemalloc/src/bitmap.c
  151. redis-4.0./deps/jemalloc/src/chunk.c
  152. redis-4.0./deps/jemalloc/src/chunk_dss.c
  153. redis-4.0./deps/jemalloc/src/chunk_mmap.c
  154. redis-4.0./deps/jemalloc/src/ckh.c
  155. redis-4.0./deps/jemalloc/src/ctl.c
  156. redis-4.0./deps/jemalloc/src/extent.c
  157. redis-4.0./deps/jemalloc/src/hash.c
  158. redis-4.0./deps/jemalloc/src/huge.c
  159. redis-4.0./deps/jemalloc/src/jemalloc.c
  160. redis-4.0./deps/jemalloc/src/mb.c
  161. redis-4.0./deps/jemalloc/src/mutex.c
  162. redis-4.0./deps/jemalloc/src/pages.c
  163. redis-4.0./deps/jemalloc/src/prof.c
  164. redis-4.0./deps/jemalloc/src/quarantine.c
  165. redis-4.0./deps/jemalloc/src/rtree.c
  166. redis-4.0./deps/jemalloc/src/stats.c
  167. redis-4.0./deps/jemalloc/src/tcache.c
  168. redis-4.0./deps/jemalloc/src/tsd.c
  169. redis-4.0./deps/jemalloc/src/util.c
  170. redis-4.0./deps/jemalloc/src/valgrind.c
  171. redis-4.0./deps/jemalloc/src/zone.c
  172. redis-4.0./deps/jemalloc/test/
  173. redis-4.0./deps/jemalloc/test/include/
  174. redis-4.0./deps/jemalloc/test/include/test/
  175. redis-4.0./deps/jemalloc/test/include/test/SFMT-alti.h
  176. redis-4.0./deps/jemalloc/test/include/test/SFMT-params.h
  177. redis-4.0./deps/jemalloc/test/include/test/SFMT-params11213.h
  178. redis-4.0./deps/jemalloc/test/include/test/SFMT-params1279.h
  179. redis-4.0./deps/jemalloc/test/include/test/SFMT-params132049.h
  180. redis-4.0./deps/jemalloc/test/include/test/SFMT-params19937.h
  181. redis-4.0./deps/jemalloc/test/include/test/SFMT-params216091.h
  182. redis-4.0./deps/jemalloc/test/include/test/SFMT-params2281.h
  183. redis-4.0./deps/jemalloc/test/include/test/SFMT-params4253.h
  184. redis-4.0./deps/jemalloc/test/include/test/SFMT-params44497.h
  185. redis-4.0./deps/jemalloc/test/include/test/SFMT-params607.h
  186. redis-4.0./deps/jemalloc/test/include/test/SFMT-params86243.h
  187. redis-4.0./deps/jemalloc/test/include/test/SFMT-sse2.h
  188. redis-4.0./deps/jemalloc/test/include/test/SFMT.h
  189. redis-4.0./deps/jemalloc/test/include/test/btalloc.h
  190. redis-4.0./deps/jemalloc/test/include/test/jemalloc_test.h.in
  191. redis-4.0./deps/jemalloc/test/include/test/jemalloc_test_defs.h.in
  192. redis-4.0./deps/jemalloc/test/include/test/math.h
  193. redis-4.0./deps/jemalloc/test/include/test/mq.h
  194. redis-4.0./deps/jemalloc/test/include/test/mtx.h
  195. redis-4.0./deps/jemalloc/test/include/test/test.h
  196. redis-4.0./deps/jemalloc/test/include/test/thd.h
  197. redis-4.0./deps/jemalloc/test/include/test/timer.h
  198. redis-4.0./deps/jemalloc/test/integration/
  199. redis-4.0./deps/jemalloc/test/integration/MALLOCX_ARENA.c
  200. redis-4.0./deps/jemalloc/test/integration/aligned_alloc.c
  201. redis-4.0./deps/jemalloc/test/integration/allocated.c
  202. redis-4.0./deps/jemalloc/test/integration/chunk.c
  203. redis-4.0./deps/jemalloc/test/integration/mallocx.c
  204. redis-4.0./deps/jemalloc/test/integration/overflow.c
  205. redis-4.0./deps/jemalloc/test/integration/posix_memalign.c
  206. redis-4.0./deps/jemalloc/test/integration/rallocx.c
  207. redis-4.0./deps/jemalloc/test/integration/sdallocx.c
  208. redis-4.0./deps/jemalloc/test/integration/thread_arena.c
  209. redis-4.0./deps/jemalloc/test/integration/thread_tcache_enabled.c
  210. redis-4.0./deps/jemalloc/test/integration/xallocx.c
  211. redis-4.0./deps/jemalloc/test/src/
  212. redis-4.0./deps/jemalloc/test/src/SFMT.c
  213. redis-4.0./deps/jemalloc/test/src/btalloc.c
  214. redis-4.0./deps/jemalloc/test/src/btalloc_0.c
  215. redis-4.0./deps/jemalloc/test/src/btalloc_1.c
  216. redis-4.0./deps/jemalloc/test/src/math.c
  217. redis-4.0./deps/jemalloc/test/src/mq.c
  218. redis-4.0./deps/jemalloc/test/src/mtx.c
  219. redis-4.0./deps/jemalloc/test/src/test.c
  220. redis-4.0./deps/jemalloc/test/src/thd.c
  221. redis-4.0./deps/jemalloc/test/src/timer.c
  222. redis-4.0./deps/jemalloc/test/stress/
  223. redis-4.0./deps/jemalloc/test/stress/microbench.c
  224. redis-4.0./deps/jemalloc/test/test.sh.in
  225. redis-4.0./deps/jemalloc/test/unit/
  226. redis-4.0./deps/jemalloc/test/unit/SFMT.c
  227. redis-4.0./deps/jemalloc/test/unit/atomic.c
  228. redis-4.0./deps/jemalloc/test/unit/bitmap.c
  229. redis-4.0./deps/jemalloc/test/unit/ckh.c
  230. redis-4.0./deps/jemalloc/test/unit/hash.c
  231. redis-4.0./deps/jemalloc/test/unit/junk.c
  232. redis-4.0./deps/jemalloc/test/unit/junk_alloc.c
  233. redis-4.0./deps/jemalloc/test/unit/junk_free.c
  234. redis-4.0./deps/jemalloc/test/unit/lg_chunk.c
  235. redis-4.0./deps/jemalloc/test/unit/mallctl.c
  236. redis-4.0./deps/jemalloc/test/unit/math.c
  237. redis-4.0./deps/jemalloc/test/unit/mq.c
  238. redis-4.0./deps/jemalloc/test/unit/mtx.c
  239. redis-4.0./deps/jemalloc/test/unit/prof_accum.c
  240. redis-4.0./deps/jemalloc/test/unit/prof_active.c
  241. redis-4.0./deps/jemalloc/test/unit/prof_gdump.c
  242. redis-4.0./deps/jemalloc/test/unit/prof_idump.c
  243. redis-4.0./deps/jemalloc/test/unit/prof_reset.c
  244. redis-4.0./deps/jemalloc/test/unit/prof_thread_name.c
  245. redis-4.0./deps/jemalloc/test/unit/ql.c
  246. redis-4.0./deps/jemalloc/test/unit/qr.c
  247. redis-4.0./deps/jemalloc/test/unit/quarantine.c
  248. redis-4.0./deps/jemalloc/test/unit/rb.c
  249. redis-4.0./deps/jemalloc/test/unit/rtree.c
  250. redis-4.0./deps/jemalloc/test/unit/size_classes.c
  251. redis-4.0./deps/jemalloc/test/unit/stats.c
  252. redis-4.0./deps/jemalloc/test/unit/tsd.c
  253. redis-4.0./deps/jemalloc/test/unit/util.c
  254. redis-4.0./deps/jemalloc/test/unit/zero.c
  255. redis-4.0./deps/linenoise/
  256. redis-4.0./deps/linenoise/.gitignore
  257. redis-4.0./deps/linenoise/Makefile
  258. redis-4.0./deps/linenoise/README.markdown
  259. redis-4.0./deps/linenoise/example.c
  260. redis-4.0./deps/linenoise/linenoise.c
  261. redis-4.0./deps/linenoise/linenoise.h
  262. redis-4.0./deps/lua/
  263. redis-4.0./deps/lua/COPYRIGHT
  264. redis-4.0./deps/lua/HISTORY
  265. redis-4.0./deps/lua/INSTALL
  266. redis-4.0./deps/lua/Makefile
  267. redis-4.0./deps/lua/README
  268. redis-4.0./deps/lua/doc/
  269. redis-4.0./deps/lua/doc/contents.html
  270. redis-4.0./deps/lua/doc/cover.png
  271. redis-4.0./deps/lua/doc/logo.gif
  272. redis-4.0./deps/lua/doc/lua.
  273. redis-4.0./deps/lua/doc/lua.css
  274. redis-4.0./deps/lua/doc/lua.html
  275. redis-4.0./deps/lua/doc/luac.
  276. redis-4.0./deps/lua/doc/luac.html
  277. redis-4.0./deps/lua/doc/manual.css
  278. redis-4.0./deps/lua/doc/manual.html
  279. redis-4.0./deps/lua/doc/readme.html
  280. redis-4.0./deps/lua/etc/
  281. redis-4.0./deps/lua/etc/Makefile
  282. redis-4.0./deps/lua/etc/README
  283. redis-4.0./deps/lua/etc/all.c
  284. redis-4.0./deps/lua/etc/lua.hpp
  285. redis-4.0./deps/lua/etc/lua.ico
  286. redis-4.0./deps/lua/etc/lua.pc
  287. redis-4.0./deps/lua/etc/luavs.bat
  288. redis-4.0./deps/lua/etc/min.c
  289. redis-4.0./deps/lua/etc/noparser.c
  290. redis-4.0./deps/lua/etc/strict.lua
  291. redis-4.0./deps/lua/src/
  292. redis-4.0./deps/lua/src/Makefile
  293. redis-4.0./deps/lua/src/fpconv.c
  294. redis-4.0./deps/lua/src/fpconv.h
  295. redis-4.0./deps/lua/src/lapi.c
  296. redis-4.0./deps/lua/src/lapi.h
  297. redis-4.0./deps/lua/src/lauxlib.c
  298. redis-4.0./deps/lua/src/lauxlib.h
  299. redis-4.0./deps/lua/src/lbaselib.c
  300. redis-4.0./deps/lua/src/lcode.c
  301. redis-4.0./deps/lua/src/lcode.h
  302. redis-4.0./deps/lua/src/ldblib.c
  303. redis-4.0./deps/lua/src/ldebug.c
  304. redis-4.0./deps/lua/src/ldebug.h
  305. redis-4.0./deps/lua/src/ldo.c
  306. redis-4.0./deps/lua/src/ldo.h
  307. redis-4.0./deps/lua/src/ldump.c
  308. redis-4.0./deps/lua/src/lfunc.c
  309. redis-4.0./deps/lua/src/lfunc.h
  310. redis-4.0./deps/lua/src/lgc.c
  311. redis-4.0./deps/lua/src/lgc.h
  312. redis-4.0./deps/lua/src/linit.c
  313. redis-4.0./deps/lua/src/liolib.c
  314. redis-4.0./deps/lua/src/llex.c
  315. redis-4.0./deps/lua/src/llex.h
  316. redis-4.0./deps/lua/src/llimits.h
  317. redis-4.0./deps/lua/src/lmathlib.c
  318. redis-4.0./deps/lua/src/lmem.c
  319. redis-4.0./deps/lua/src/lmem.h
  320. redis-4.0./deps/lua/src/loadlib.c
  321. redis-4.0./deps/lua/src/lobject.c
  322. redis-4.0./deps/lua/src/lobject.h
  323. redis-4.0./deps/lua/src/lopcodes.c
  324. redis-4.0./deps/lua/src/lopcodes.h
  325. redis-4.0./deps/lua/src/loslib.c
  326. redis-4.0./deps/lua/src/lparser.c
  327. redis-4.0./deps/lua/src/lparser.h
  328. redis-4.0./deps/lua/src/lstate.c
  329. redis-4.0./deps/lua/src/lstate.h
  330. redis-4.0./deps/lua/src/lstring.c
  331. redis-4.0./deps/lua/src/lstring.h
  332. redis-4.0./deps/lua/src/lstrlib.c
  333. redis-4.0./deps/lua/src/ltable.c
  334. redis-4.0./deps/lua/src/ltable.h
  335. redis-4.0./deps/lua/src/ltablib.c
  336. redis-4.0./deps/lua/src/ltm.c
  337. redis-4.0./deps/lua/src/ltm.h
  338. redis-4.0./deps/lua/src/lua.c
  339. redis-4.0./deps/lua/src/lua.h
  340. redis-4.0./deps/lua/src/lua_bit.c
  341. redis-4.0./deps/lua/src/lua_cjson.c
  342. redis-4.0./deps/lua/src/lua_cmsgpack.c
  343. redis-4.0./deps/lua/src/lua_struct.c
  344. redis-4.0./deps/lua/src/luac.c
  345. redis-4.0./deps/lua/src/luaconf.h
  346. redis-4.0./deps/lua/src/lualib.h
  347. redis-4.0./deps/lua/src/lundump.c
  348. redis-4.0./deps/lua/src/lundump.h
  349. redis-4.0./deps/lua/src/lvm.c
  350. redis-4.0./deps/lua/src/lvm.h
  351. redis-4.0./deps/lua/src/lzio.c
  352. redis-4.0./deps/lua/src/lzio.h
  353. redis-4.0./deps/lua/src/print.c
  354. redis-4.0./deps/lua/src/strbuf.c
  355. redis-4.0./deps/lua/src/strbuf.h
  356. redis-4.0./deps/lua/test/
  357. redis-4.0./deps/lua/test/README
  358. redis-4.0./deps/lua/test/bisect.lua
  359. redis-4.0./deps/lua/test/cf.lua
  360. redis-4.0./deps/lua/test/echo.lua
  361. redis-4.0./deps/lua/test/env.lua
  362. redis-4.0./deps/lua/test/factorial.lua
  363. redis-4.0./deps/lua/test/fib.lua
  364. redis-4.0./deps/lua/test/fibfor.lua
  365. redis-4.0./deps/lua/test/globals.lua
  366. redis-4.0./deps/lua/test/hello.lua
  367. redis-4.0./deps/lua/test/life.lua
  368. redis-4.0./deps/lua/test/luac.lua
  369. redis-4.0./deps/lua/test/printf.lua
  370. redis-4.0./deps/lua/test/readonly.lua
  371. redis-4.0./deps/lua/test/sieve.lua
  372. redis-4.0./deps/lua/test/sort.lua
  373. redis-4.0./deps/lua/test/table.lua
  374. redis-4.0./deps/lua/test/trace-calls.lua
  375. redis-4.0./deps/lua/test/trace-globals.lua
  376. redis-4.0./deps/lua/test/xd.lua
  377. redis-4.0./deps/update-jemalloc.sh
  378. redis-4.0./redis.conf
  379. redis-4.0./runtest
  380. redis-4.0./runtest-cluster
  381. redis-4.0./runtest-sentinel
  382. redis-4.0./sentinel.conf
  383. redis-4.0./src/
  384. redis-4.0./src/.gitignore
  385. redis-4.0./src/Makefile
  386. redis-4.0./src/adlist.c
  387. redis-4.0./src/adlist.h
  388. redis-4.0./src/ae.c
  389. redis-4.0./src/ae.h
  390. redis-4.0./src/ae_epoll.c
  391. redis-4.0./src/ae_evport.c
  392. redis-4.0./src/ae_kqueue.c
  393. redis-4.0./src/ae_select.c
  394. redis-4.0./src/anet.c
  395. redis-4.0./src/anet.h
  396. redis-4.0./src/aof.c
  397. redis-4.0./src/asciilogo.h
  398. redis-4.0./src/atomicvar.h
  399. redis-4.0./src/bio.c
  400. redis-4.0./src/bio.h
  401. redis-4.0./src/bitops.c
  402. redis-4.0./src/blocked.c
  403. redis-4.0./src/childinfo.c
  404. redis-4.0./src/cluster.c
  405. redis-4.0./src/cluster.h
  406. redis-4.0./src/config.c
  407. redis-4.0./src/config.h
  408. redis-4.0./src/crc16.c
  409. redis-4.0./src/crc64.c
  410. redis-4.0./src/crc64.h
  411. redis-4.0./src/db.c
  412. redis-4.0./src/debug.c
  413. redis-4.0./src/debugmacro.h
  414. redis-4.0./src/defrag.c
  415. redis-4.0./src/dict.c
  416. redis-4.0./src/dict.h
  417. redis-4.0./src/endianconv.c
  418. redis-4.0./src/endianconv.h
  419. redis-4.0./src/evict.c
  420. redis-4.0./src/expire.c
  421. redis-4.0./src/fmacros.h
  422. redis-4.0./src/geo.c
  423. redis-4.0./src/geo.h
  424. redis-4.0./src/geohash.c
  425. redis-4.0./src/geohash.h
  426. redis-4.0./src/geohash_helper.c
  427. redis-4.0./src/geohash_helper.h
  428. redis-4.0./src/help.h
  429. redis-4.0./src/hyperloglog.c
  430. redis-4.0./src/intset.c
  431. redis-4.0./src/intset.h
  432. redis-4.0./src/latency.c
  433. redis-4.0./src/latency.h
  434. redis-4.0./src/lazyfree.c
  435. redis-4.0./src/lzf.h
  436. redis-4.0./src/lzfP.h
  437. redis-4.0./src/lzf_c.c
  438. redis-4.0./src/lzf_d.c
  439. redis-4.0./src/memtest.c
  440. redis-4.0./src/mkreleasehdr.sh
  441. redis-4.0./src/module.c
  442. redis-4.0./src/modules/
  443. redis-4.0./src/modules/.gitignore
  444. redis-4.0./src/modules/Makefile
  445. redis-4.0./src/modules/gendoc.rb
  446. redis-4.0./src/modules/helloblock.c
  447. redis-4.0./src/modules/hellotype.c
  448. redis-4.0./src/modules/helloworld.c
  449. redis-4.0./src/modules/testmodule.c
  450. redis-4.0./src/multi.c
  451. redis-4.0./src/networking.c
  452. redis-4.0./src/notify.c
  453. redis-4.0./src/object.c
  454. redis-4.0./src/pqsort.c
  455. redis-4.0./src/pqsort.h
  456. redis-4.0./src/pubsub.c
  457. redis-4.0./src/quicklist.c
  458. redis-4.0./src/quicklist.h
  459. redis-4.0./src/rand.c
  460. redis-4.0./src/rand.h
  461. redis-4.0./src/rax.c
  462. redis-4.0./src/rax.h
  463. redis-4.0./src/rax_malloc.h
  464. redis-4.0./src/rdb.c
  465. redis-4.0./src/rdb.h
  466. redis-4.0./src/redis-benchmark.c
  467. redis-4.0./src/redis-check-aof.c
  468. redis-4.0./src/redis-check-rdb.c
  469. redis-4.0./src/redis-cli.c
  470. redis-4.0./src/redis-trib.rb
  471. redis-4.0./src/redisassert.h
  472. redis-4.0./src/redismodule.h
  473. redis-4.0./src/release.c
  474. redis-4.0./src/replication.c
  475. redis-4.0./src/rio.c
  476. redis-4.0./src/rio.h
  477. redis-4.0./src/scripting.c
  478. redis-4.0./src/sds.c
  479. redis-4.0./src/sds.h
  480. redis-4.0./src/sdsalloc.h
  481. redis-4.0./src/sentinel.c
  482. redis-4.0./src/server.c
  483. redis-4.0./src/server.h
  484. redis-4.0./src/setproctitle.c
  485. redis-4.0./src/sha1.c
  486. redis-4.0./src/sha1.h
  487. redis-4.0./src/siphash.c
  488. redis-4.0./src/slowlog.c
  489. redis-4.0./src/slowlog.h
  490. redis-4.0./src/solarisfixes.h
  491. redis-4.0./src/sort.c
  492. redis-4.0./src/sparkline.c
  493. redis-4.0./src/sparkline.h
  494. redis-4.0./src/syncio.c
  495. redis-4.0./src/t_hash.c
  496. redis-4.0./src/t_list.c
  497. redis-4.0./src/t_set.c
  498. redis-4.0./src/t_string.c
  499. redis-4.0./src/t_zset.c
  500. redis-4.0./src/testhelp.h
  501. redis-4.0./src/util.c
  502. redis-4.0./src/util.h
  503. redis-4.0./src/valgrind.sup
  504. redis-4.0./src/version.h
  505. redis-4.0./src/ziplist.c
  506. redis-4.0./src/ziplist.h
  507. redis-4.0./src/zipmap.c
  508. redis-4.0./src/zipmap.h
  509. redis-4.0./src/zmalloc.c
  510. redis-4.0./src/zmalloc.h
  511. redis-4.0./tests/
  512. redis-4.0./tests/assets/
  513. redis-4.0./tests/assets/default.conf
  514. redis-4.0./tests/assets/encodings.rdb
  515. redis-4.0./tests/assets/hash-zipmap.rdb
  516. redis-4.0./tests/cluster/
  517. redis-4.0./tests/cluster/cluster.tcl
  518. redis-4.0./tests/cluster/run.tcl
  519. redis-4.0./tests/cluster/tests/
  520. redis-4.0./tests/cluster/tests/-base.tcl
  521. redis-4.0./tests/cluster/tests/-faildet.tcl
  522. redis-4.0./tests/cluster/tests/-failover.tcl
  523. redis-4.0./tests/cluster/tests/-failover-loop.tcl
  524. redis-4.0./tests/cluster/tests/-resharding.tcl
  525. redis-4.0./tests/cluster/tests/-slave-selection.tcl
  526. redis-4.0./tests/cluster/tests/-slave-stop-cond.tcl
  527. redis-4.0./tests/cluster/tests/-replica-migration.tcl
  528. redis-4.0./tests/cluster/tests/-update-msg.tcl
  529. redis-4.0./tests/cluster/tests/-pubsub.tcl
  530. redis-4.0./tests/cluster/tests/-manual-failover.tcl
  531. redis-4.0./tests/cluster/tests/-manual-takeover.tcl
  532. redis-4.0./tests/cluster/tests/-replica-migration-.tcl
  533. redis-4.0./tests/cluster/tests/-no-failover-option.tcl
  534. redis-4.0./tests/cluster/tests/helpers/
  535. redis-4.0./tests/cluster/tests/helpers/onlydots.tcl
  536. redis-4.0./tests/cluster/tests/includes/
  537. redis-4.0./tests/cluster/tests/includes/init-tests.tcl
  538. redis-4.0./tests/cluster/tmp/
  539. redis-4.0./tests/cluster/tmp/.gitignore
  540. redis-4.0./tests/helpers/
  541. redis-4.0./tests/helpers/bg_complex_data.tcl
  542. redis-4.0./tests/helpers/gen_write_load.tcl
  543. redis-4.0./tests/instances.tcl
  544. redis-4.0./tests/integration/
  545. redis-4.0./tests/integration/aof-race.tcl
  546. redis-4.0./tests/integration/aof.tcl
  547. redis-4.0./tests/integration/convert-zipmap-hash-on-load.tcl
  548. redis-4.0./tests/integration/logging.tcl
  549. redis-4.0./tests/integration/psync2-reg.tcl
  550. redis-4.0./tests/integration/psync2.tcl
  551. redis-4.0./tests/integration/rdb.tcl
  552. redis-4.0./tests/integration/redis-cli.tcl
  553. redis-4.0./tests/integration/replication-.tcl
  554. redis-4.0./tests/integration/replication-.tcl
  555. redis-4.0./tests/integration/replication-.tcl
  556. redis-4.0./tests/integration/replication-psync.tcl
  557. redis-4.0./tests/integration/replication.tcl
  558. redis-4.0./tests/sentinel/
  559. redis-4.0./tests/sentinel/run.tcl
  560. redis-4.0./tests/sentinel/tests/
  561. redis-4.0./tests/sentinel/tests/-base.tcl
  562. redis-4.0./tests/sentinel/tests/-conf-update.tcl
  563. redis-4.0./tests/sentinel/tests/-slaves-reconf.tcl
  564. redis-4.0./tests/sentinel/tests/-runtime-reconf.tcl
  565. redis-4.0./tests/sentinel/tests/-slave-selection.tcl
  566. redis-4.0./tests/sentinel/tests/-manual.tcl
  567. redis-4.0./tests/sentinel/tests/-ckquorum.tcl
  568. redis-4.0./tests/sentinel/tests/-down-conditions.tcl
  569. redis-4.0./tests/sentinel/tests/includes/
  570. redis-4.0./tests/sentinel/tests/includes/init-tests.tcl
  571. redis-4.0./tests/sentinel/tmp/
  572. redis-4.0./tests/sentinel/tmp/.gitignore
  573. redis-4.0./tests/support/
  574. redis-4.0./tests/support/cluster.tcl
  575. redis-4.0./tests/support/redis.tcl
  576. redis-4.0./tests/support/server.tcl
  577. redis-4.0./tests/support/test.tcl
  578. redis-4.0./tests/support/tmpfile.tcl
  579. redis-4.0./tests/support/util.tcl
  580. redis-4.0./tests/test_helper.tcl
  581. redis-4.0./tests/tmp/
  582. redis-4.0./tests/tmp/.gitignore
  583. redis-4.0./tests/unit/
  584. redis-4.0./tests/unit/aofrw.tcl
  585. redis-4.0./tests/unit/auth.tcl
  586. redis-4.0./tests/unit/bitfield.tcl
  587. redis-4.0./tests/unit/bitops.tcl
  588. redis-4.0./tests/unit/dump.tcl
  589. redis-4.0./tests/unit/expire.tcl
  590. redis-4.0./tests/unit/geo.tcl
  591. redis-4.0./tests/unit/hyperloglog.tcl
  592. redis-4.0./tests/unit/introspection-.tcl
  593. redis-4.0./tests/unit/introspection.tcl
  594. redis-4.0./tests/unit/keyspace.tcl
  595. redis-4.0./tests/unit/latency-monitor.tcl
  596. redis-4.0./tests/unit/lazyfree.tcl
  597. redis-4.0./tests/unit/limits.tcl
  598. redis-4.0./tests/unit/maxmemory.tcl
  599. redis-4.0./tests/unit/memefficiency.tcl
  600. redis-4.0./tests/unit/multi.tcl
  601. redis-4.0./tests/unit/obuf-limits.tcl
  602. redis-4.0./tests/unit/other.tcl
  603. redis-4.0./tests/unit/printver.tcl
  604. redis-4.0./tests/unit/protocol.tcl
  605. redis-4.0./tests/unit/pubsub.tcl
  606. redis-4.0./tests/unit/quit.tcl
  607. redis-4.0./tests/unit/scan.tcl
  608. redis-4.0./tests/unit/scripting.tcl
  609. redis-4.0./tests/unit/slowlog.tcl
  610. redis-4.0./tests/unit/sort.tcl
  611. redis-4.0./tests/unit/type/
  612. redis-4.0./tests/unit/type/hash.tcl
  613. redis-4.0./tests/unit/type/incr.tcl
  614. redis-4.0./tests/unit/type/list-.tcl
  615. redis-4.0./tests/unit/type/list-.tcl
  616. redis-4.0./tests/unit/type/list-common.tcl
  617. redis-4.0./tests/unit/type/list.tcl
  618. redis-4.0./tests/unit/type/set.tcl
  619. redis-4.0./tests/unit/type/string.tcl
  620. redis-4.0./tests/unit/type/zset.tcl
  621. redis-4.0./tests/unit/wait.tcl
  622. redis-4.0./utils/
  623. redis-4.0./utils/build-static-symbols.tcl
  624. redis-4.0./utils/cluster_fail_time.tcl
  625. redis-4.0./utils/corrupt_rdb.c
  626. redis-4.0./utils/create-cluster/
  627. redis-4.0./utils/create-cluster/.gitignore
  628. redis-4.0./utils/create-cluster/README
  629. redis-4.0./utils/create-cluster/create-cluster
  630. redis-4.0./utils/generate-command-help.rb
  631. redis-4.0./utils/graphs/
  632. redis-4.0./utils/graphs/commits-over-time/
  633. redis-4.0./utils/graphs/commits-over-time/README.md
  634. redis-4.0./utils/graphs/commits-over-time/genhtml.tcl
  635. redis-4.0./utils/hashtable/
  636. redis-4.0./utils/hashtable/README
  637. redis-4.0./utils/hashtable/rehashing.c
  638. redis-4.0./utils/hyperloglog/
  639. redis-4.0./utils/hyperloglog/.gitignore
  640. redis-4.0./utils/hyperloglog/hll-err.rb
  641. redis-4.0./utils/hyperloglog/hll-gnuplot-graph.rb
  642. redis-4.0./utils/install_server.sh
  643. redis-4.0./utils/lru/
  644. redis-4.0./utils/lru/README
  645. redis-4.0./utils/lru/lfu-simulation.c
  646. redis-4.0./utils/lru/test-lru.rb
  647. redis-4.0./utils/redis-copy.rb
  648. redis-4.0./utils/redis-sha1.rb
  649. redis-4.0./utils/redis_init_script
  650. redis-4.0./utils/redis_init_script.tpl
  651. redis-4.0./utils/releasetools/
  652. redis-4.0./utils/releasetools/01_create_tarball.sh
  653. redis-4.0./utils/releasetools/02_upload_tarball.sh
  654. redis-4.0./utils/releasetools/03_test_release.sh
  655. redis-4.0./utils/releasetools/04_release_hash.sh
  656. redis-4.0./utils/releasetools/changelog.tcl
  657. redis-4.0./utils/speed-regression.tcl
  658. redis-4.0./utils/whatisdoing.sh

tar -xvf redis-4.0.10.tar.gz

0x01-编译

  1. [root@centos7 ~]# cd redis-4.0./
  2. [root@centos7 redis-4.0.]# ls
  3. -RELEASENOTES CONTRIBUTING deps Makefile README.md runtest runtest-sentinel src utils
  4. BUGS COPYING INSTALL MANIFESTO redis.conf runtest-cluster sentinel.conf tests
  5. [root@centos7 redis-4.0.]# make
  6. cd src && make all
  7. make[]: Entering directory `/root/redis-4.0./src'
  8. CC Makefile.dep
  9. make[]: Leaving directory `/root/redis-4.0./src'
  10. make[]: Entering directory `/root/redis-4.0./src'
  11. 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
  12. (cd ../deps && make distclean)
  13. make[]: Entering directory `/root/redis-4.0./deps'
  14. (cd hiredis && make clean) > /dev/null || true
  15. (cd linenoise && make clean) > /dev/null || true
  16. (cd lua && make clean) > /dev/null || true
  17. (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
  18. (rm -f .make-*)
  19. make[]: Leaving directory `/root/redis-4.0./deps'
  20. (rm -f .make-*)
  21. echo STD=-std=c99 -pedantic -DREDIS_STATIC='' >> .make-settings
  22. echo WARN=-Wall -W -Wno-missing-field-initializers >> .make-settings
  23. echo OPT=-O2 >> .make-settings
  24. echo MALLOC=jemalloc >> .make-settings
  25. echo CFLAGS= >> .make-settings
  26. echo LDFLAGS= >> .make-settings
  27. echo REDIS_CFLAGS= >> .make-settings
  28. echo REDIS_LDFLAGS= >> .make-settings
  29. 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
  30. echo PREV_FINAL_LDFLAGS= -g -ggdb -rdynamic >> .make-settings
  31. (cd ../deps && make hiredis linenoise lua jemalloc)
  32. make[]: Entering directory `/root/redis-4.0./deps'
  33. (cd hiredis && make clean) > /dev/null || true
  34. (cd linenoise && make clean) > /dev/null || true
  35. (cd lua && make clean) > /dev/null || true
  36. (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
  37. (rm -f .make-*)
  38. (echo "" > .make-cflags)
  39. (echo "" > .make-ldflags)
  40. MAKE hiredis
  41. cd hiredis && make static
  42. make[]: Entering directory `/root/redis-4.0./deps/hiredis'
  43. gcc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c
  44. make[]: gcc: Command not found
  45. make[]: *** [net.o] Error
  46. make[]: Leaving directory `/root/redis-4.0./deps/hiredis'
  47. make[]: *** [hiredis] Error
  48. make[]: Leaving directory `/root/redis-4.0./deps'
  49. make[]: [persist-settings] Error (ignored)
  50. CC adlist.o
  51. /bin/sh: cc: command not found
  52. make[]: *** [adlist.o] Error
  53. make[]: Leaving directory `/root/redis-4.0./src'
  54. make: *** [all] Error

make编译报错1

make编译报错现象:

  1. [root@centos7 redis-4.0.10]# make
  2. cd src && make all
  3. make[1]: Entering directory `/root/redis-4.0.10/src'
  4. CC adlist.o
  5. /bin/sh: cc: command not found

原因:Centos默认未安装gcc相关包,需要手动安装

解决方案:按照提示,缺少gcc相关包,手动安装

gcc gcc-c++ libstdc++-devel

 yum install -y gcc gcc-c++ libstdc++-devel

then,继续编译,出现报错现象2

  1. [root@centos7 redis-4.0.]# make
  2. cd src && make all
  3. make[]: Entering directory `/root/redis-4.0./src'
  4. CC adlist.o
  5. In file included from adlist.c:::
  6. zmalloc.h::: fatal error: jemalloc/jemalloc.h: No such file or directory
  7. #include <jemalloc/jemalloc.h>
  8. ^
  9. compilation terminated.
  10. make[]: *** [adlist.o] Error
  11. make[]: Leaving directory `/root/redis-4.0./src'
  12. make: *** [all] Error

原因:jemalloc重载了Linux下的ANSI C的malloc和free函数。在redis的README中,有如下描述:

  1. Allocator
  2. ———
  3. 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.
  4. To force compiling against libc malloc, use:
  5. % make MALLOC=libc
  6. To compile against jemalloc on Mac OS X systems, use:
  7. % make MALLOC=jemalloc

关于分配器allocator,如果系统已经配置了MALLOC环境变量,则使用MALLOC环境标量去建立Redis,但是libc并不是默认的分配器,默认分配器为Jemalloc,但是目前系统内并没有Jemalloc,所以需要在make编译时,加上MALLOC=libc,强制修改默认分配器进行编译。

解决方案:在make时,指定分配器参数:MALLOC

  1. [root@centos7 redis-4.0.]# make MALLOC=libc
  2. cd src && make all
  3. make[]: Entering directory `/root/redis-4.0./src'
  4. edis.info lcov-html Makefile.dep dict-benchmark
  5. (cd ../deps && make distclean)
  6. make[]: Entering directory `/root/redis-4.0./deps'
  7. (cd hiredis && make clean) > /dev/null || true
  8. (cd linenoise && make clean) > /dev/null || true
  9. (cd lua && make clean) > /dev/null || true
  10. (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
  11. (rm -f .make-*)
  12. make[]: Leaving directory `/root/redis-4.0./deps'
  13. (rm -f .make-*)
  14. echo STD=-std=c99 -pedantic -DREDIS_STATIC= >> .make-settings
  15. echo WARN=-Wall -W -Wno-missing-field-initializers >> .make-settings
  16. echo OPT=-O2 >> .make-settings
  17. echo MALLOC=libc >> .make-settings
  18. echo CFLAGS= >> .make-settings
  19. echo LDFLAGS= >> .make-settings
  20. echo REDIS_CFLAGS= >> .make-settings
  21. echo REDIS_LDFLAGS= >> .make-settings
  22. deps/hiredis -I../deps/linenoise -I../deps/lua/src >> .make-settings
  23. echo PREV_FINAL_LDFLAGS= -g -ggdb -rdynamic >> .make-settings
  24. (cd ../deps && make hiredis linenoise lua)
  25. make[]: Entering directory `/root/redis-4.0./deps'
  26. (cd hiredis && make clean) > /dev/null || true
  27. (cd linenoise && make clean) > /dev/null || true
  28. (cd lua && make clean) > /dev/null || true
  29. (cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
  30. (rm -f .make-*)
  31. (echo "" > .make-cflags)
  32. (echo "" > .make-ldflags)
  33. MAKE hiredis
  34. cd hiredis && make static
  35. make[]: Entering directory `/root/redis-4.0./deps/hiredis'
  36. cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c
  37. cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb hiredis.c
  38. cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb sds.c
  39. cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb async.c
  40. cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb read.c
  41. ar rcs libhiredis.a net.o hiredis.o sds.o async.o read.o
  42. make[]: Leaving directory `/root/redis-4.0./deps/hiredis'
  43. MAKE linenoise
  44. cd linenoise && make
  45. make[]: Entering directory `/root/redis-4.0./deps/linenoise'
  46. cc -Wall -Os -g -c linenoise.c
  47. make[]: Leaving directory `/root/redis-4.0./deps/linenoise'
  48. MAKE lua
  49. cd lua/src && make all CFLAGS="-O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' " MYLDFLAGS="" AR="ar rcu"
  50. make[]: Entering directory `/root/redis-4.0./deps/lua/src'
  51. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lapi.o lapi.c
  52. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lcode.o lcode.c
  53. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldebug.o ldebug.c
  54. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldo.o ldo.c
  55. ldo.c: In function f_parser’:
  56. ldo.c::: warning: unused variable c [-Wunused-variable]
  57. int c = luaZ_lookahead(p->z);
  58. ^
  59. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldump.o ldump.c
  60. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lfunc.o lfunc.c
  61. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lgc.o lgc.c
  62. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o llex.o llex.c
  63. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lmem.o lmem.c
  64. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lobject.o lobject.c
  65. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lopcodes.o lopcodes.c
  66. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lparser.o lparser.c
  67. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lstate.o lstate.c
  68. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lstring.o lstring.c
  69. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ltable.o ltable.c
  70. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ltm.o ltm.c
  71. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lundump.o lundump.c
  72. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lvm.o lvm.c
  73. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lzio.o lzio.c
  74. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o strbuf.o strbuf.c
  75. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o fpconv.o fpconv.c
  76. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lauxlib.o lauxlib.c
  77. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lbaselib.o lbaselib.c
  78. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ldblib.o ldblib.c
  79. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o liolib.o liolib.c
  80. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lmathlib.o lmathlib.c
  81. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o loslib.o loslib.c
  82. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o ltablib.o ltablib.c
  83. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lstrlib.o lstrlib.c
  84. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o loadlib.o loadlib.c
  85. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o linit.o linit.c
  86. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua_cjson.o lua_cjson.c
  87. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua_struct.o lua_struct.c
  88. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua_cmsgpack.o lua_cmsgpack.c
  89. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua_bit.o lua_bit.c
  90. object files
  91. ranlib liblua.a
  92. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o lua.o lua.c
  93. cc -o lua lua.o liblua.a -lm
  94. liblua.a(loslib.o): In function `os_tmpname':
  95. loslib.c:(.text+0x28c): warning: the use of `tmpnam' is dangerous, better use `mkstemp'
  96. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o luac.o luac.c
  97. cc -O2 -Wall -DLUA_ANSI -DENABLE_CJSON_GLOBAL -DREDIS_STATIC='' -c -o print.o print.c
  98. cc -o luac luac.o print.o liblua.a -lm
  99. make[]: Leaving directory `/root/redis-4.0./deps/lua/src'
  100. make[]: Leaving directory `/root/redis-4.0./deps'
  101. CC adlist.o
  102. CC quicklist.o
  103. CC ae.o
  104. CC anet.o
  105. CC dict.o
  106. CC server.o
  107. CC sds.o
  108. CC zmalloc.o
  109. CC lzf_c.o
  110. CC lzf_d.o
  111. CC pqsort.o
  112. CC zipmap.o
  113. CC sha1.o
  114. CC ziplist.o
  115. CC release.o
  116. CC networking.o
  117. CC util.o
  118. CC object.o
  119. CC db.o
  120. CC replication.o
  121. CC rdb.o
  122. CC t_string.o
  123. CC t_list.o
  124. CC t_set.o
  125. CC t_zset.o
  126. CC t_hash.o
  127. CC config.o
  128. CC aof.o
  129. CC pubsub.o
  130. CC multi.o
  131. CC debug.o
  132. CC sort.o
  133. CC intset.o
  134. CC syncio.o
  135. CC cluster.o
  136. CC crc16.o
  137. CC endianconv.o
  138. CC slowlog.o
  139. CC scripting.o
  140. CC bio.o
  141. CC rio.o
  142. CC rand.o
  143. CC memtest.o
  144. CC crc64.o
  145. CC bitops.o
  146. CC sentinel.o
  147. CC notify.o
  148. CC setproctitle.o
  149. CC blocked.o
  150. CC hyperloglog.o
  151. CC latency.o
  152. CC sparkline.o
  153. CC redis-check-rdb.o
  154. CC redis-check-aof.o
  155. CC geo.o
  156. CC lazyfree.o
  157. CC module.o
  158. CC evict.o
  159. CC expire.o
  160. CC geohash.o
  161. CC geohash_helper.o
  162. CC childinfo.o
  163. CC defrag.o
  164. CC siphash.o
  165. CC rax.o
  166. LINK redis-server
  167. INSTALL redis-sentinel
  168. CC redis-cli.o
  169. LINK redis-cli
  170. CC redis-benchmark.o
  171. LINK redis-benchmark
  172. INSTALL redis-check-rdb
  173. INSTALL redis-check-aof
  174.  
  175. Hint: It's a good idea to run 'make test' ;)
  176.  
  177. make[]: Leaving directory `/root/redis-4.0./src'

make MALLOC=libc

0x02-安装--make install

  1. [root@centos7 redis-4.0.]# make install
  2. cd src && make install
  3. make[]: Entering directory `/root/redis-4.0./src'
  4. CC Makefile.dep
  5. make[]: Leaving directory `/root/redis-4.0./src'
  6. make[]: Entering directory `/root/redis-4.0./src'
  7.  
  8. Hint: It's a good idea to run 'make test' ;)
  9.  
  10. INSTALL install
  11. INSTALL install
  12. INSTALL install
  13. INSTALL install
  14. INSTALL install
  15. make[]: Leaving directory `/root/redis-4.0./src'

0x03-各个系统版本启动:

  • Windows:直接解压源码包,cpoy到指定目录,CMD:切换至redis目录,cd  d:\redis ,redis-server.exe redis.conf即可,最好加入环境变量
  • Linux:./redis-server  或者指定配置文件启动./redis-server /etc/redis.conf

Redis笔记 -- make编译安装报错记录2则(一)的更多相关文章

  1. LINUX下基于NVIDIA HPC SDK 的 VASP6.3.x编译安装报错整理

    关于gcc 用旧版本安装NVIDIA HPC SDK再编译会报错: "/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/move.h" ...

  2. PHP编译安装报错:configure: error: mcrypt.h not found. Please reinstall libmcrypt

    我是在CentOS6.5安装php5.5.28这个版本,PHP编译代码如下: ./configure --prefix=/usr/local/php --with-config-file-path=/ ...

  3. Python在Linux下编译安装报错:Makefile:1141:install

    正常情况下执行:./configuremake && make install可以直接安装python,但是在在更新了乌版图后居然报错了!!!检查了一圈,发现乌版图安装了python3 ...

  4. php5.6.11编译安装报错configure: error: Don't know how to define struct flock on this system

    centos 6.8 32位系统下,安装php.5.6.11是出现这个错误 解决办法: 1 2 3 4 vim /etc/ld.so.conf.d/local.conf     # 编辑库文件 /us ...

  5. php编译安装报错

    Cannot find OpenSSL's <evp.h> 解决方法: 下载openssl-1.1.0h.tar  包 [root@localhost ~]# cd openssl-1.1 ...

  6. php编译安装 报错 make ***[libphp5.la] Error 1解决方法

    报错信息: /usr/bin/ld: cannot find -lltdl collect2: ld returned 1 exit status make: *** [libphp5.la] Err ...

  7. php编译安装报错:make: *** [sapi/cli/php] Error 1 解决办法

    ext/iconv/.libs/iconv.o: In function `php_iconv_stream_filter_ctor':/ext/iconv/iconv.c:2491: undefin ...

  8. Oracle 10g安装报错记录

    环境描述linux 5.6 安装Oracle 10.2.0.1.0 DBCA问题 1)DBCA图形化界面,出现乱码 测试环境,操作系统中文字符编码导致 export LANG=C 2)DBCA图形化点 ...

  9. memcached编译安装报错 ,提示checking build system type... Invalid configuration `x86_64-unknown-linux-': machine `x86_64-unknown-linux' not recognized configure: error: /bin/sh ./config.sub x86_64-unknown-linu

随机推荐

  1. Sublime Text 3.1 3170正式版+Patch注册机

        Sublime Text 是一款轻量级的代码编辑器,也是HTML和散文先进的文本编辑器.Sublime Text 具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等. ...

  2. git命令图

  3. java笔记--ASCII编码认知和转换

    ASCII是基于拉丁字母的一套电脑编码系统,主要用于显示英语字符是当今最通用的单字节编码.包括128个字符. --如果朋友您想转载本文章请注明转载地址"http://www.cnblogs. ...

  4. ASP.NET中的身份验证有那些?你当前项目采用什么方式验证请解释

    ASP.NET身份验证模式包括Windows.Forms(窗体).Passport(护照)和None(无). l  Windows身份验证—常结合应用程序自定义身份验证使用使用这种身份验证模式时,AS ...

  5. 使用普通用户set autotrace on报错SP2-0618: Cannot find the Session Identifier

    普通用户使用 autotrace,出现如下报错: SQL> set autotrace on SP2-0618: Cannot find the Session Identifier.  Che ...

  6. php中上传图片

    这里来看看php中如何上传图片的 先看代码check_image.php <html> <head> <title></title> <style ...

  7. Wannafly挑战赛18 E 极差(线段树、单调栈)

    Wannafly挑战赛18 E 极差 题意 给出三个长度为n的正整数序列,一个区间[L,R]的价值定义为:三个序列中,这个区间的极差(最大值与最小值之差)的乘积. 求所有区间的价值之和.答案对\(2^ ...

  8. 「bzoj 4025: 二分图」

    题目 显然二分图没有奇环 于是考虑使用并查集维护一下看看是否存在奇环 我们可以考虑加权并查集,维护出\(x\)到\(fa_x\)的实际距离 由于我们只需要考虑奇偶性,于是我们处理出到根的路径异或一下就 ...

  9. 查看oracle中表的索引

    oracle中表的索引信息存在 user_indexes 和 user_ind_columns 两张表里面, 其中, user_indexes 系统视图存放是索引的名称以及该索引是否是唯一索引等信息, ...

  10. luogu P2742 【模板】二维凸包

    嘟嘟嘟 没错,我开始学凸包了. 其实挺简单的. 前置技能: 1.极坐标系 2.向量叉积 1.极坐标系 就是一种二维坐标系.只不过两个坐标分别表示向量和极轴的角度和自身的长度.对于不同的问题,极轴可以自 ...