redis 编译安装问题记录

redis 编译安装过程中出现问题汇总:
通过解压方式安装,tar -zvxf redis-3.2.9.tar.gz
进入 解压后的文件目录,如下
cd /home/redis-3.2.9/
进行编译安装,在编译安装过程中出现如下错误:
[[email protected] redis-3.2.9]# make
cd src && make all
make[1]: 进入目录“/home/redis-3.2.9/src”
CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
#include <jemalloc/jemalloc.h>
^
编译中断。
make[1]: [adlist.o] 错误 1
make[1]: 离开目录“/home/redis-3.2.9/src”
make:
[all] 错误 2

这时使用make MALLOC=libc,进行安装:
[email protected] src]#make MALLOC=libc
rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-rdb redis-check-aof .o .gcda .gcno .gcov redis.info lcov-html
(cd ../deps && make distclean)
make[1]: 进入目录“/home/redis-3.2.9/deps”
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd geohash-int && make clean) > /dev/null || true
(cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
(rm -f .make-)
make[1]: 离开目录“/home/redis-3.2.9/deps”
(rm -f .make-
)
echo STD=-std=c99 -pedantic -DREDIS_STATIC= >> .make-settings
echo WARN=-Wall -W >> .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
echo PREV_FINAL_CFLAGS=-std=c99 -pedantic -DREDIS_STATIC= -Wall -W -O2 -g -ggdb -I../deps/geohash-int -I../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 geohash-int)
make[1]: 进入目录“/home/redis-3.2.9/deps”
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd geohash-int && 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[2]: 进入目录“/home/redis-3.2.9/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
ar rcs libhiredis.a net.o hiredis.o sds.o async.o
make[2]: 离开目录“/home/redis-3.2.9/deps/hiredis”
.
.
.
.
CC redis-benchmark.o
LINK redis-benchmark
INSTALL redis-check-rdb
CC redis-check-aof.o
LINK redis-check-aof

Hint: It‘s a good idea to run ‘make test‘ ;)

安装好后,进入src目录下,make test,报You need tcl 8.5 or newer in order to run the Redis test,然后安装tcl,如果可以在线安装就在线安装,如果不行同样下载对应需要安装版本tcl 8.5 tar包进行安装。
[email protected] redis-3.2.9]# make test
cd src && make test
make[1]: 进入目录“/home/redis-3.2.9/src”
You need tcl 8.5 or newer in order to run the Redis test
make[1]: [test] 错误 1
make[1]: 离开目录“/home/redis-3.2.9/src”
make:
[test] 错误 2

[[email protected] redis-3.2.9]# yum install tcl
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile

  • base: mirrors.cn99.com
  • epel: mirrors.aliyun.com
  • extras: mirrors.njupt.edu.cn
  • updates: mirrors.cn99.com
    正在解决依赖关系
    --> 正在检查事务

完毕!
[[email protected] redis-3.2.9]# make test
cd src && make test
make[1]: 进入目录“/home/redis-3.2.9/src”
Cleanup: may take some time... OK
Starting test server at port 11111

Testing unit/printver
.
.
.
.
106 seconds - integration/replication-psync

\o/ All tests passed without errors!

Cleanup: may take some time... OK
make[1]: 离开目录“/home/redis-3.2.9/src”

原文地址:https://blog.51cto.com/372550/2403826

时间: 2024-10-29 03:02:47

redis 编译安装问题记录的相关文章

CentOS6.5_Nginx1.40_Php5.57_MySQL5.5.35编译安装全记录

环境说明:CentOS 6.5 32位  PHP Version 5.5.7  mysql version _5.6.16 一.准备工作 配置防火墙,允许防火墙通过22(sshd).80(WEB).3306(MYSQL)端口iptables -A INPUT -p tcp --dport 80 -j ACCEPTiptables -A INPUT -p tcp --dport 3306 -j ACCEPTiptables -A INPUT -p tcp --dport 22 -j ACCEPTi

redis window 安装测试--记录

1.下载地址https://github.com/dmajkic/redis/downloads 2.打开一个cmd窗口,使用cd命令切换到指定目录(D:\redis\64bit)运行 redis-server.exe redis.conf . 3.在开一个cmd(D:\redis\64bit)  运行 redis-cli.exe -h 127.0.0.1 -p 6379,其中 127.0.0.1是本地ip,6379是redis服务端的默认端口 4. 测试: set test "11111111

Redis编译安装

介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set --有序集合)和hash(哈希类型).这些数据类型都支持push/pop.add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的.在此基础上,redis支持各种不同方式的排序.与memcached一样,为了保证效率,数据都是缓存在内存中.区别的是redis会周期性的把更

ubuntu下编译安装mysql记录

搞了整整一天,好不容易折腾完,在此记录下,下次就省事了.     去官网http://www.php.net/downloads.php下载所需要的php版本,这里我选择5.6.22.     下载:    wget http://cn2.php.net/distributions/php-5.6.22.tar.gz     解压:    tar -zxvf  php-5.6.22.tar.gz && cd php-5.6.22    configure脚本:     /configure

干货CentOS6.5_Nginx1.40_Php5.57_MySQL5.5.35编译安装全记录

http://www.unixdo.com/Unix_Linux/CentOS65_Nginx140_Php557_MySQL5535.html 环境说明:CentOS 6.5 32位   Nginx1.40   Php5.57  MySQL5.5.35 一.准备工作 配置防火墙,允许防火墙通过22(sshd).80(WEB).3306(MYSQL)端口iptables -A INPUT -p tcp --dport 80 -j ACCEPTiptables -A INPUT -p tcp --

windows下Redis编译安装

redis是现在比较流行的noSQL,主流大型网站都用的比较多,很多同学不知道怎么安装,这里介绍在windows下面安装以及扩展,提供学习使用,实际使用环境多在Linux下. 首先到相应网站下载redis: 下载完成后解压到任意盘符如:D:/redis 里面包括:如图所示. redis-server.exe:服务程序 redis-check-dump.exe:本地数据库检查 redis-check-aof.exe:更新日志检查 redis-benchmark.exe:性能测试,用以模拟同时由N个

redis 编译安装(生产环境推荐)

一.安装redis 1.下载redis包 wget http://download.redis.io/releases/redis-3.2.1.tar.gz 2.解压redis包到/opt下 tar -zxvf /home/redis-3.2.1.tar.gz -C /opt 3.安装并测试redis cd /opt/redis-3.2.1/src make && make install make test 备注:若make test报错,提示安装tcl,则进行tcl的安装: 二.配置r

redis编译安装常见报错

gcc编译redis时报错: zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory zmalloc.h:55:2: error: #error "Newer version of jemalloc required" 原因是jemalloc重载了Linux下的ANSI C的malloc和free函数.解决办法:make时添加参数. make MALLOC=libc 原文地址:https://www.

nosql之redis简单安装与使用

redis基础应用场景: web间session共享,即多个war工程共享一个session 分布式缓存,因为redis为键值对存储,提供了丰富的adapter可以支持C..net.java客户端,因此平台间进行数据交换起到了作用 因此它可以用作大型系统的分布式缓存,并且其setnx的锁常用于秒杀,抢红包这种电商活动场景中 下载:redis:http://download.redis.io/releases/ redis编译安装 tar xf redis-3.0.7.tar.gz cd redi