project('testproject', 'cpp')
src = ['a.cpp', 'b.cpp']
executable('test', src)
使用 Meson 构建系统使用 Valgrind 构建可执行文件的最简单方法是什么?
project('testproject', 'cpp')
src = ['a.cpp', 'b.cpp']
executable('test', src)
使用 Meson 构建系统使用 Valgrind 构建可执行文件的最简单方法是什么?
只是为了完整性,要注意valgrind可以用作介子命令行中的包装器,例如
$ meson test --wrap='valgrind --leak-check=full --error-exitcode=1' testname
或者
$ meson test --wrap='valgrind --tool=helgrind -v --error-exitcode=1' testname
可以与其他测试选项结合使用,例如
$ meson test --wrap='valgrind --leak-check=full --error-exitcode=1' testname --repeat=100
检查参考手册的这一页。
valgrind 是一个动态分析工具,不需要专门为 valgrind 重新编译。
例如,您可以这样做:
valgrind ls
valgrind 将运行并分析 ls 命令。
但请注意,建议使用调试信息进行编译,否则 valgrind 的错误报告将不是很容易理解。
http://www.valgrind.org/docs/manual/QuickStart.html中提供了有关如何使用 valgrind 的介绍