VLD 踩坑集
使用VLD的踩坑实录
//踩的坑
1 安装目录有空格
2 qmake没执行 qmake->重新构建
3 编译代码的路径 和 执行路径存在中文
4 vld.ini没有拷贝到执行目录下,导致无法生成文件
5 如果有include"stdafx.h",则include <vld.h>放在其后,否则放在最前面
6 VLD只在debug版本有效
7 如果想将产生的日志保存到文件中,需要将vld.ini(VLD安装目录下)复制到可执行文件目录下,
然后作如下修改:
ReportFile =.\memory_leak_report.txt
ReportTo = both
注意:虽然这里写的both,但是当日志输出到debugger时,文件就不会生成了
8 发布到其他工作站
8.1 该工作站拷贝编译好的可执行文件
8.1 该工作站安装vld-setup.exe
8.2 该工作站执行文件目录下拷贝vld.ini
8.3 该工作站拷贝编译的可执行文件的pdb,要不然不显示文件路径
8.4 对于存在dll的程序,需要重新编译该dll,同时更新到现场dll pdb这两个文件, pdb文件放到exe相同目录就可以,可以不用放到dll目录下
8.5 综上发布的时候需要的文件例如 a.exe a.pdb adll.dll adll.pdb vld.ini vld-x.x.x-setup.exe 这些
//----------------------------------------main中使用 放到最上方---------------------------
#ifdef _DEBUG
#include “vld.h”
#endif
#-----------------------------------D:/VLD/自行修改安装位置------------------
#------------------------------------Qt Pro文件中填写----------------------------
win32 {
CONFIG(debug, debug|release) {
INCLUDEPATH += D:/VLD/include
LIBS += -LD:/VLD/lib/Win32 -lvld
}
}
VLD日志怎么看