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.
 */
相关推荐
q***76667 分钟前
RustDesk搭建公网中继服务器远控内网机器(完整版)
运维·服务器
WXDcsdn32 分钟前
联想台式机更换硬盘(Win10转Win7)后鼠标和键盘无法使用
运维·windows·it运维
讨厌下雨的天空39 分钟前
Linux信号
linux·运维·c++
weixin_446260851 小时前
n8n 工作流集合:解锁自动化新体验!
运维·自动化
淼_@淼1 小时前
pytest简介
运维·服务器·pytest
赖small强1 小时前
【Linux C/C++开发】第26章:系统级综合项目理论
linux·c语言·c++
SCandL1521 小时前
安全上下文的修改实验
linux
ragnwang1 小时前
Ubuntu /home 分区安全扩容教程
linux·运维·ubuntu
Azure++1 小时前
Centos安装clickhouse
linux·clickhouse·centos
濊繵1 小时前
Linux网络--应用层自定义协议与序列化
linux·服务器·网络