内存泄露检测工具VLD相关配置

  • Post author:
  • Post category:其他


参考链接:


VLD(Visual LeakDetector)内存泄露库的使用


VS2019编译 内存泄漏检测工具VLD

一、源码下载

源码下载链接:

https://github.com/KindDragon/vld

解压后目录结构如下:

二、编译

1、打开解决方案:\sourceCode\vld\vld_vs14.sln,只需要编译libformat和vld,其他项目直接卸载即可:

2、项目工程的默认平台工具集是VS2015,因此需要修改项目属性的SDK版本和平台工具集到与本机VS相同的版本,由于内存检测一般在debug模式下使用,因此VLD的项目配置和调用vld.dll的上层系统的项目配置都应该选择为Debug x64或者Debug x86:

3、VLD默认支持VS2015及以下版本,但是VS2015以上版本也是兼容的,因此直接将vld.cpp中的平台限制代码注释掉即可:

/*#if _MSC_VER > 1900
#error Not supported VS
#endif*/

4、VLD项目配置和上层项目(调用VLD进行内存检测的项目)项目配置

VLD项目工程编译配置:

配置 —— Debug x64

配置属性 —— C/C++ —— 代码生成 — 运行库 —— 多线程调试 (/MTd)

上层项目(调用VLD进行内存检测的项目)工程编译配置:

配置 —— Debug x64

配置属性 —— C/C++ —— 代码生成 — 运行库 —— 多线程调试 (/MTd)

链接器 —— 调试 —— 生成调试信息 —— 生成经过优化以共享和发布的调试信息 (/DEBUG:FULL)

上层项目工程需要导入的静态库:

\vld\sourceCode\vld\src\bin\x64\Debug-v142\libformat.lib

\vld\sourceCode\vld\src\bin\x64\Debug-v142\vld.lib

上层项目运行时需要链接的动态库:

\vld\sourceCode\vld\src\bin\x64\Debug-v142\vld_x64.dll

\vld\sourceCode\vld\setup\dbghelp\x64\dbghelp.dll

上层项目源码需要包含的头文件:

\vld\sourceCode\vld\src\vld.h

\vld\sourceCode\vld\src\vld_def.h

上层项目需要配置的配置文件:

\vld\sourceCode\vld\vld.ini

ReportFile = .\memory_leak_report.txt

ReportTo = file

\vld\sourceCode\vld\setup\dbghelp\x64\Microsoft.DTfW.DHL.manifest

5、运行结果

如果没有内存泄露,则memory_leak_report.txt中的内容如下:



版权声明:本文为rammuschow原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。