ctest找不到valgrind

时间:2014-10-21 23:28:54

标签: c++ cmake valgrind ctest

调用

ctest -j4 -DCTEST_MEMORYCHECK_COMMAND="/usr/bin/valgrind" -DMemoryCheckCommand="/usr/bin/valgrind" --output-on-failure -T MemCheck 

Memory checker (MemoryCheckCommand) not set, or cannot find the specified program.

为什么不自动找到valgrind,也不能手动指定?

1 个答案:

答案 0 :(得分:3)

CTest Wiki page所述,CTest从构建目录中的文件DartConfiguration.tcl读取内存检查命令的位置(以及其他设置)。创建dart配置文件的一种方法是在CMakeLists.txt中包含CTest CMake模块:

include (CTest)

CTest模块将在/usr/bin中找到您的valgrind安装,并在MemoryCheckCommand文件中放置一个变量DartConfiguration.tcl