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.
 */
相关推荐
Sheffield18 小时前
今天浅浅的回顾一下Ansible吧
运维
姚青&18 小时前
四.文件处理命令-文本编辑
linux
oMcLin18 小时前
如何在 Red Hat Linux 8 上实现 Kubernetes 自定义资源管理器(CRD)扩展,支持微服务架构
linux·架构·kubernetes
济61718 小时前
linux(第十一期)--Makefile 语法简述-- Ubuntu20.04
linux
hwlfly18 小时前
Linux内核TCP网络模块深度分析
linux
杜文龙19 小时前
gitlab系统搭建AI代码自动审查多项目可复用架构
linux
星辰烈龙19 小时前
黑马程序员JavaSE基础加强d5
服务器·网络·php
DeepFlow 零侵扰全栈可观测19 小时前
3分钟定位OA系统GC瓶颈:DeepFlow全栈可观测平台实战解析
大数据·运维·人工智能·云原生·性能优化
一点晖光19 小时前
jenkins 流水线脚本
运维·jenkins
浩子智控19 小时前
分区操作系统、容器化、虚拟机的概念
服务器·系统安全