VS2017下编译使用开源代码dlmalloc
dlmalloc与malloc类似,是一个更好用的内存分配工具,项目中刚好有用到dlmalloc,所以从github上下载 源码学习一番,本以为可以很easy的在vs中编译使用,没想到最后折腾了2个小时。。。还是vs好久没用,有点生疏了,所以写篇blog记下防忘,废话不多说,直接进入正题吧。 一.下载源码并使用cmake构建编译环境 从https://github.com/ennorehling/dlmalloc 下载dlmalloc源码压缩包并解压。 使用cmake工具在build文件夹下构建编译环境: 点击generate生成vs解决方案如下 : 使用vs打开解决方案 其中ALL_BUILD 和ZERO_CHECK用不到,这里直接将它们从解决方案中移除,同时新建一个工程testdlmalloc, 我将在testdlmalloc中使用dlmalloc中编译出的静态Lib库 testmalloc.cpp中代码如下: 要想在testdlmalloc中使用dlmalloc静态库,与使用其它第三方lib库的方法一样,要在以下几个地方设置好: 1.对于dlmalloc工程如果要使用带dl前缀的方法,编译lib库时要加上USE_DL_PREFIX宏,配置方法如下,在dlmalloc工程上右击选择属性进入配置页,配置好后,点击生成,就会在指定目录下生成dlmalloc.lib静态库 编译testdlmalloc时,要包含头文件malloc.h,并且编译时也要加上USE_DL_PREFIX宏,而且要将生成dlmalloc.lib链接进来,配置如下: