解壓后make編譯報(bào)錯(cuò)?
gcc?-std=c99?-pedantic?-c?-O3?-fPIC??-Wall?-W?-Wstrict-prototypes?-Wwrite-strings?-g?-ggdb??net.c??
make[3]:?gcc:命令未找到??
make[3]:?***?[net.o]?錯(cuò)誤?127??
make[3]:?離開(kāi)目錄“/usr/local/redis-3.2.8/deps/hiredis”??
make[2]:?***?[hiredis]?錯(cuò)誤?2??
make[2]:?離開(kāi)目錄“/usr/local/redis-3.2.8/deps”??
make[1]:?[persist-settings]?錯(cuò)誤?2?(忽略)??
????CC?adlist.o??
/bin/sh:?cc:?未找到命令??
make[1]:?***?[adlist.o]?錯(cuò)誤?127??
make[1]:?離開(kāi)目錄“/usr/local/redis-3.2.8/src”??
make:?***?[all]?錯(cuò)誤?2??
提示gcc命令未找到,這是因?yàn)閞edis沒(méi)有安裝gcc編譯器沒(méi)安裝
這時(shí)候只要安裝gcc編譯器即可
[root@bogon?redis-3.2.8]#?yum?install?-y?gcc?g++?gcc-c++?make??
安裝完成提示
如果gcc編譯器安裝過(guò)程中報(bào)錯(cuò),可以到百度搜索解決污朽!
------------------------------
編譯器安裝完成之后再redis-3.2.8目錄下執(zhí)行make命令
[root@bogon?redis-3.2.8]#?make??
cd?src?&&?make?all??
make[1]:?進(jìn)入目錄“/usr/local/redis-3.2.8/src”??
????CC?adlist.o??
In?file?included?from?adlist.c:34:0:??
zmalloc.h:50:31:?致命錯(cuò)誤:jemalloc/jemalloc.h:沒(méi)有那個(gè)文件或目錄??
?#include?<jemalloc/jemalloc.h>??
編譯中斷。??
make[1]:?***?[adlist.o]?錯(cuò)誤?1??
make[1]:?離開(kāi)目錄“/usr/local/redis-3.2.8/src”??
make:?***?[all]?錯(cuò)誤?2??
又出現(xiàn)錯(cuò)誤愕宋,原因分析? ?
關(guān)于分配器allocator出牧,?如果有MALLOC??這個(gè)?環(huán)境變量悴了,?會(huì)有用這個(gè)環(huán)境變量的?去建立Redis。??
而且libc?并不是默認(rèn)的?分配器刀疙,?默認(rèn)的是?jemalloc,?因?yàn)?jemalloc?被證明?有更少的?fragmentation?problems?比libc彤蔽。??
沒(méi)有jemalloc 而只有 libc 當(dāng)然 make 出錯(cuò)。
這時(shí)候在編譯過(guò)程時(shí)增加一個(gè)參數(shù)
[root@bogon?redis-3.2.8]#?make?MALLOC=libc??
編譯成功