学习使用valgrind检查程序中内存可能存在的问题

时间:2021-04-13 22:35:33

  在valgrind官网下载过来,configure,make,make install一路下来没有问题。

  检查程序时使用指令 valgrind --tool=memcheck --leak-check=full ./pro 启动,会提示缺少glibc's debuginfo

    

  

 1 yyh@yyh-Rev-1-0:~/Desktop/tGcc/semaphore$ valgrind --tool=memcheck --leak-check=full ./tt 
 2 ==3835== Memcheck, a memory error detector
 3 ==3835== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
 4 ==3835== Using Valgrind-3.9.0 and LibVEX; rerun with -h for copyright info
 5 ==3835== Command: ./tt
 6 ==3835== 
 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.

  网上搜索结果为缺少glibc6-dgb这个库,install安装完,就OK了。