valgrind是一款用于内存调试、内存泄漏检测以及性能分析的软件开发工具。在安装valgrind之前,要先安装autoconf和automake。您可以使用命令autoconf --version和automake --version检查这两个工具是否有安装。
工具/原料
1
valgrind-3.10.1
2
autoconf
3
automake
4
CentOS 6.4
安装valgrind
1
下载最新的安装包http://valgrind.org/downloads/current.html或者是输入命令:wget http://valgrind.org/downloads/valgrind-3.10.1.tar.bz2
2
解压缩安装包,输入命令:tar -jxvf valgrind-3.10.1.tar.bz2
3
进入解压缩后生成的目录valgrind-3.10.1,输入命令:cd valgrind-3.10.1
4
运行./autogen.sh设置环境,输入命令:./autogen.sh如果你碰到如下错误:aclocal: command not found则表示你需要安装autoconf和automake两个工具,请先查看“安装autoconf“和”安装automake“两个步骤
5
配置valgrind,并声称Makefile文件,输入命令:./configrue
6
编译并安装valgrind,输入命令:make;make install
7
检查安装是否成功,输入命令:valgrind --version
使用valgrind
1
新建main.cpp文件,输入命令:vim main.cpp在文件写入如下代码,后保存
2
编译main.cpp,输入命令:g++ main.cpp -o testdump -g -std=c++11-rdynamic编译程序的时候,不要忘记加-g选项,这样,使用这些工具我们将会看到所对应的代码行;
3
运行测试程序,输入命令:valgrind --leak-check=yes ./testdump我们可以看到红框标注的位置就是越界的位置:Invalid write of size 4