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.
 */
相关推荐
Kang强3 分钟前
tcpdump 抓到 icmp 包,但是抓不到 tcp 包??
linux
demodashi6667 分钟前
Linux下ag搜索命令详解
linux·运维·windows
無识25 分钟前
Linux-第四章web服务
linux·运维·服务器
一叶知秋yyds33 分钟前
Centos 安装 Docker教程
linux·docker·centos
fie888936 分钟前
在CentOS 7上集成cJSON库的方法
linux·运维·centos
带土11 小时前
5. Unix/Linux 系统常用类型别名清单
linux·unix
爱吃橘的橘猫1 小时前
如何解决VMware虚拟机中Linux系统终端不显示ens33 inet IP地址的问题
linux·运维·服务器·虚拟机
佐杰1 小时前
Jenkins使用指南1
java·运维·jenkins
kyle~1 小时前
计算机系统---USB的四种传输方式
运维·c++·计算机系统
无聊的小坏坏1 小时前
Select 服务器实战教学:从 Socket 封装到多客户端并发
服务器·select·io多路复用