qtCreator下valgrind使用教程

一、说明

由于Qt creator和valgrind是相互独立的,所以首先需要安装valgrind后,qt才能使用该功能进行内存检测分析。

二、安装valgrind

1、使用命令行安装

sudo apt-get install valgrind

2、源代码下载安装

下载最新版本:http://valgrind.org/downloads/current.html#current
安装命令:

tar -jxvf valgrind-3.15.0.tar.bz2.tar.bz2
cd valgrind-3.15.0	
sudo ./configure	 #配置
#如果更换其他安装目录,则使用如下命令
#./configure --prefix=/opt/valgrind #配置安装目录
sudo make			//编译安装
sudo make install

查看版本号确认安装成功
qtCreator下valgrind使用教程_第1张图片

三、Valgrind使用方法

用法: valgrind [options] prog-and-args [options]:
常用选项,适用于所有Valgrind工具:
-tool= 最常用的选项。运行 valgrind中名为toolname的工具。默认memcheck。
h –help 显示帮助信息。
-version 显示valgrind内核的版本,每个工具都有各自的版本。
q –quiet 安静地运行,只打印错误信息。
v –verbose 更详细的信息, 增加错误数统计。
-trace-children=no|yes 跟踪子线程? [no]
-track-fds=no|yes 跟踪打开的文件描述符?[no]
-time-stamp=no|yes 增加时间戳到LOG信息? [no]
-log-fd= 输出LOG到描述符文件 [2=stderr]
-log-file= 将输出的信息写入到filename.PID的文件里,PID是运行程序的进行ID
-log-file-exactly= 输出LOG信息到 file
-log-file-qualifier= 取得环境变量的值来做为输出信息的文件名。 [none]
-log-socket=ipaddr:port 输出LOG到socket ,ipaddr:port

四、LOG信息输出

xml=yes 将信息以xml格式输出,只有memcheck可用
-num-callers= show callers in stack traces [12]
-error-limit=no|yes 如果太多错误,则停止显示新错误? [yes]
-error-exitcode= 如果发现错误则返回错误代码 [0=disable]
-db-attach=no|yes 当出现错误,valgrind会自动启动调试器gdb。[no]
-db-command= 启动调试器的命令行选项[gdb -nw %f %p]
适用于Memcheck工具的相关选项:

-leak-check=no|summary|full 要求对leak给出详细信息? [summary]
-leak-resolution=low|med|high how much bt merging in leak check [low]
-show-reachable=no|yes show reachable blocks in leak check? [no]

五、qtCreator使用Valgrind

启动如下图所示,使用还是比较简单,可以自己摸索,这里不再举例。
qtCreator下valgrind使用教程_第2张图片

你可能感兴趣的:(C++\QT,linux,qt,valgrind,内存泄漏)