现在我有一个包含许多类和.cpp和.h文件的大程序,我正在尝试使用Valgrind检查内存泄漏,因为我使用了很多指针,内存等.
我正在使用linux和codeblocks 16.01与gcc,我试图直接在代码块中运行Valgrind但我得到以下错误:
--------------- Application output --------------valgrind: /myPathToTheProject/ValgrindOut.xml: No such file or directory
如果我使用只有.cpp文件和main的小项目进行测试,那么它运行良好,Valgrind会生成ValgrindOut.xml.在这个大项目中,我总是遇到这个错误.有人知道出了什么问题?或其他方式或工具来测试内存泄漏?
编辑 – 运行Valgrind后泄漏概要
Leak summary:definitely lost: 673 bytes in 6 blocks. indirectly lost: 89,128 bytes in 68 blocks. possibly lost: 232 bytes in 2 blocks. still reachable: 80,944 bytes in 6 blocks. suppressed: 0 bytes in 0 blocks.解决方法 我不确定如何直接从codeblocks运行valgrind.我建议你使用codeblocks构建你的项目.执行时,按照以下命令使用valgrind.
命令
valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all --log-file=leak.txt ./myexecutable <my command line arguments>
例
valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all --log-file=leak.txt ./myexecutable -i 192.168.1.10 -p 5000
这样你就可以生成valgrind输出文件,即包含内存泄漏等的leak.txt.
总结以上是内存溢出为你收集整理的c – Valgrind on codeblocks(linux)全部内容,希望文章能够帮你解决c – Valgrind on codeblocks(linux)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)