Redis 2.8.18 安装报错 error: jemalloc/jemalloc.h: No such file or directory解决方法
admin
2023-08-01 17:03:36
0

错误描述

安装Redis 2.8.18时报错:

zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory `/data0/src/redis-2.6.2/src'
make: *** [all] Error 2

原因分析

在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 Linux  
systems. 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  这个 环境变量, 会有用这个环境变量的 去建立Redis。

而且libc 并不是默认的 分配器, 默认的是 jemalloc, 因为 jemalloc 被证明 有更少的 fragmentation problems 比libc。

但是如果你又没有jemalloc 而只有 libc 当然 make 出错。 所以加这么一个参数。

解决办法

make MALLOC=libc

make PREFIX=/opt/redis MALLOC=libc install


相关内容

热门资讯

第一完成单位!隆平高科荣获20... 7月8日,2025年度国家科学技术奖励大会在北京隆重举行。由隆平高科作为第一完成单位,中信集团首席科...
2026智慧能源大会在成都开幕 成都7月9日电 (单鹏)由中国能源研究会等主办的2026智慧能源大会9日在成都开幕。本次活动汇聚来自...
国家科学技术“三大奖”揭晓,为... 7月8日,2025年度国家科学技术奖励大会在北京举行,国家自然科学奖、技术发明奖、科技进步奖“三大奖...
原创 安... 今天继续分享6月安卓性价比榜,这次的价格区间是4000元以上,性价比榜机型基于性能榜和京东自营价。比...
原创 向... 2026年的中国新能源汽车市场,仍在迅速“膨胀”。 一方面是市场体量的进一步扩张,乘联会公布的最新销...
每天捕蛇十七八个小时!广西横州... 近期,广西横州市因洪涝灾害导致一养蛇场被冲毁,多名村民被蛇咬伤,引发社会关注。“这两天干活太累,想休...
福建晋江鞋厂火灾现场疏散213... 记者采访了解到,福建晋江陈埭镇江头村的辉腾鞋业有限公司厂房火灾发生后,属地消防赶赴现场救援,调集救援...
“美伊战火重燃,所有人都在等穆... 美伊停火破局,战事是否会全面重启?伊朗社会又如何看待战火重燃?凤凰卫视驻伊朗记者李睿从德黑兰发回报道...
【城事】计量纳米,精确到皮米(... 2026年7月8日,2025年度国家科学技术奖励大会举行,上海68项成果及人选获国家科技奖。其中,同...
金日晟矿业取得可快速收线的电缆... 国家知识产权局信息显示,安徽金日晟矿业有限责任公司取得一项名为“可快速收线的电缆桥架”的专利,授权公...