zoukankan      html  css  js  c++  java
  • valgrind检测linux程序内存泄露

    1.可以在Valgrind Home下载最新版本;

    2.解压之后,打开README文件,查看软件的安装方法,一般都是./configure make make install这三步;

    3.检查是否安装正确:

    1 valgrind ls -l

    我安装的时候出现如下错误:

    复制代码
     1 # valgrind ls -l
     2 ==13544== Memcheck, a memory error detector
     3 ==13544== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
     4 ==13544== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
     5 ==13544== Command: ls -l
     6 ==13544== 
     7 
     8 valgrind:  Fatal error at startup: a function redirection
     9 valgrind:  which is mandatory for this platform-tool combination
    10 valgrind:  cannot be set up.  Details of the redirection are:
    11 valgrind:  
    12 valgrind:  A must-be-redirected function
    13 valgrind:  whose name matches the pattern:      strlen
    14 valgrind:  in an object with soname matching:   ld-linux.so.2
    15 valgrind:  was not found whilst processing
    16 valgrind:  symbols from the object with soname: ld-linux.so.2
    17 valgrind:  
    18 valgrind:  Possible fixes: (1, short term): install glibc's debuginfo
    19 valgrind:  package on this machine.  (2, longer term): ask the packagers
    20 valgrind:  for your Linux distribution to please in future ship a non-
    21 valgrind:  stripped ld.so (or whatever the dynamic linker .so is called)
    22 valgrind:  that exports the above-named function using the standard
    23 valgrind:  calling conventions for this platform.  The package you need
    24 valgrind:  to install for fix (1) is called
    25 valgrind:  
    26 valgrind:    On Debian, Ubuntu:                 libc6-dbg
    27 valgrind:    On SuSE, openSuSE, Fedora, RHEL:   glibc-debuginfo
    28 valgrind:  
    29 valgrind:  Cannot continue -- exiting now.  Sorry.
    复制代码

    以上错误,是因为ubuntu还需要一个库:

    1 sudo apt-get install libc6-dbg

    安装完这个库之后再次运行valgrind ls -l

    4.使用方式:

    1 valgrind --tool=memcheck --leak-check=full ./main
  • 相关阅读:
    Keil MDK中的Code, RO-data , RW-data, ZI-data分别代表什么意思?(转)
    nrf开发笔记一开发软件
    ARM CORTEX-M3的时钟
    stm32之Cortex系统定时器(SysTick)
    micrium ucprobe使用笔记
    C语言结构体初始化的四种方法(转载)
    setsockopt的作用
    Java之RandomAccessFile小结
    疯狂JAVA讲义---第十五章:输入输出(上)流的处理和文件
    java压缩解压zip文件,中文乱码还需要ant.jar包
  • 原文地址:https://www.cnblogs.com/spinsoft/p/2750695.html
Copyright © 2011-2022 走看看