我已经在我的项目中引入了Boost.Container,它使用jemalloc作为默认分配器,看起来Boots.Container使用了自定义分配器dlmalloc,当然,当链接时,我在“多个定义”链接错误中失败,因为在目标文件中引入了两个"XXXalloc“。关闭'jemalloc‘不是一个选项,但我找不到是否有可能关闭dlmalloc的使用。你知道怎么解决这个问题吗?
发布于 2020-06-10 20:12:17
实际上,Boost Container是99%的头文件。
文档将DLMalloc扩展作为扩展名https://www.boost.org/doc/libs/1_73_0/doc/html/container/extended_allocators.html列出
这意味着您显然已经选择了扩展分配器。如果这不是您想要的,那么您知道要删除什么。
一个很好的提示是当你不需要链接Boost Container的时候,因为快速检查导出的符号时,除了分配器的东西,我没有看到任何我能识别的东西。
https://stackoverflow.com/questions/62299998
复制相似问题