jemalloc 库的编译(Linux 下面)

1、从 github 上面下载源代码

2、解压到编译的目录里面去

3、安装 autoconf 工具链

4、执行 autogen.sh,成功(done)后就直接 make -j编译线程数

如果没有执行下面的配置语句编译出来的 jemalloc 库,是不能被其它程序链接C符号:je_malloc 函数的,因为它是通过连接器替换C标准库的 malloc、free 函数,但是一个程序之中可能会用到不同的分配器,最好的办法是这么配置编译环境。

./configure --with-jemalloc-prefix=je_

make -j

然后这样子也行

autogen.sh --with-jemalloc-prefix=je_

make -j

如果是 --with-jemalloc-prefix=je_ 编译的就需要增一个编译器定义宏

JEMALLOC_NO_DEMANGLE

该宏定义的说明:

cpp 复制代码
/*
 * The je_* macros can be used as stable alternative names for the
 * public jemalloc API if JEMALLOC_NO_DEMANGLE is defined.  This is primarily
 * meant for use in jemalloc itself, but it can be used by application code to
 * provide isolation from the name mangling specified via --with-mangling
 * and/or --with-jemalloc-prefix.
 */
相关推荐
优化Henry4 分钟前
新建LTE站点光功率劣化分析与处理案例
运维·网络·5g·信息与通信
志栋智能6 分钟前
运维超自动化的本质:效率、质量与创新的三重奏
运维·服务器·数据库·安全·自动化
y小花6 分钟前
安卓vold服务
android·linux·运维
开开心心就好7 分钟前
体积小巧的图片重复查找工具推荐
linux·运维·服务器·智能手机·自动化·excel·fabric
tryqaaa_15 分钟前
学习日志(一)【含markdown语法,Linux学习】
linux·运维·学习·web安全·web·markdown
渔民小镇18 分钟前
5 分钟搭建桌游服务器:Room 模块 + 领域事件实战
java·运维·服务器·分布式·游戏
小义_26 分钟前
【Kubernetes】(七) 控制器2
linux·运维·云原生·kubernetes·红帽
WJ.Polar34 分钟前
Ansible任务控制
linux·运维·网络·python·ansible
计算机安禾1 小时前
【Linux从入门到精通】第10篇:软件包管理——Linux如何安装与卸载软件
java·linux·运维·服务器·编辑器
zzzyyy5381 小时前
Linux进程控制(2)
linux·服务器