jemalloc 在Github上開源了,你可以選擇下載release 版本,或者直接clone 源碼編譯 我選擇的是源碼編譯
git clone https://github.com/jemalloc/jemalloc.git
cd jemalloc
./autogen.sh
make
sudo make install
默認安裝的路徑
/usr/bin/install -c -d /usr/local/bin
/usr/bin/install -c -m 755 bin/jemalloc-config /usr/local/bin
/usr/bin/install -c -m 755 bin/jemalloc.sh /usr/local/bin
/usr/bin/install -c -m 755 bin/jeprof /usr/local/bin
/usr/bin/install -c -d /usr/local/include/jemalloc
/usr/bin/install -c -m 644 include/jemalloc/jemalloc.h /usr/local/include/jemalloc
/usr/bin/install -c -d /usr/local/lib
/usr/bin/install -c -m 755 lib/libjemalloc.so.2 /usr/local/lib
ln -sf libjemalloc.so.2 /usr/local/lib/libjemalloc.so
/usr/bin/install -c -d /usr/local/lib
/usr/bin/install -c -m 755 lib/libjemalloc.a /usr/local/lib
/usr/bin/install -c -m 755 lib/libjemalloc_pic.a /usr/local/lib
/usr/bin/install -c -d /usr/local/lib/pkgconfig
/usr/bin/install -c -m 644 jemalloc.pc /usr/local/lib/pkgconfig
/usr/bin/install -c -d /usr/local/share/doc/jemalloc
/usr/bin/install -c -m 644 doc/jemalloc.html /usr/local/share/doc/jemalloc
/usr/bin/install -c -d /usr/local/share/man/man3
/usr/bin/install -c -m 644 doc/jemalloc.3 /usr/local/share/man/man3
使用方法,編寫時候如下:
/************************************************************
*#include<jemalloc/jemalloc.h>必須寫在#include <stdlib.h>的後面
************************************************************/
void do_something(size_t i)
{
// Leak some memory.
malloc(i * 100);
}
int main(int argc, char **argv)
{
size_t i;
for (i = 0; i < 1000; i++) {
do_something(i);
}
// Dump allocator statistics to stderr.
malloc_stats_print(NULL, NULL, NULL);
return (0);
}
編譯方法如下:
gcc main.c -o a.out -ljemalloc