当前位置: 代码迷 >> 综合 >> mtrace--linux下检测由malloc导致内存泄露的工具
  详细解决方案

mtrace--linux下检测由malloc导致内存泄露的工具

热度:81   发布时间:2024-01-03 22:12:07.0

mtrace–linux下检测由malloc导致内存泄露的工具

  1. 在代码中添加
    (1)#include“stdlib.h”
    (2)setenv(“MALLOC_RTACE”,”output”,1);
    (3)mtrace();
    如下图蓝色框:
    这里写图片描述

  2. 对上图的mytext.c代码进行编译:gcc -o test mytext.c,在当前目录下得到test文件。

  3. 运行test:./test,在当前目录下得到output文件。

  4. output需要使用mtrace工具来查看,格式是mtrace [binary] output_file name:mtrace test output 运行结果如下:
    这里写图片描述

  5. 上图内容并没有指出是代码中的第几行出错,在编译可执行文件test时,需要加-g:gcc -g -o test mytext.c,再按照步骤3和4查看output的内容如下图:看,有显示第几行申请内存,但没有被释放。结束。
    这里写图片描述