在jemalloc
的“Getting-Started”部分中,将其链接到应用程序的一种可能方式是:
在构建时将jemalloc链接到应用程序,但将其用作通用的malloc实现:
cc app.c -o app -L${JEMALLOC_PATH}/lib -Wl,-rpath,${JEMALLOC_PATH}/lib -ljemalloc
据我了解此命令,它将导致静态和动态链接发生。为什么这样做?什么是“......将它用作通用的malloc实现”?
答案 0 :(得分:2)
这意味着jemalloc
将取代标准malloc
功能。将其与下一个选项进行对比:
使用API前缀编译jemalloc(请参阅--with-jemalloc-prefix configure选项),如上所述在构建时链接jemalloc,但是明显使用jemalloc来自系统分配器。
在这种情况下,您可以使用jemalloc()
而不是malloc()
来调用它。