Valgrind在KDevelop中使用CTest更改工作目录

时间:2015-06-18 13:55:33

标签: c++ cmake valgrind ctest

我正在使用Ctest开始测试Helgrind:

find_program(VALGRIND_EXECUTABLE valgrind)
message(STATUS "Valgrind in ${VALGRIND_EXECUTABLE}")
configure_file(project.supp project.supp)
set(BOOST_TEST_ARGS --catch_system_errors=no)

set(VALGRIND_HELGRIND_OPTIONS --tool=helgrind --suppressions=${CMAKE_CURRENT_BINARY_DIR}/project.supp --xml=yes --read-var-info=yes)
add_test(NAME TestHelgrind COMMAND ${VALGRIND_EXECUTABLE} ${VALGRIND_HELGRIND_OPTIONS} --xml-file=${CMAKE_CURRENT_BINARY_DIR}/test.xml ${CMAKE_CURRENT_BINARY_DIR}/test ${BOOST_TEST_ARGS})

然而,测试中的工作目录似乎是/ usr / bin。 即使指定:

WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"

这应该是我猜的默认值。 例如,如果我使用memcheck,它就可以工作。

测试从KDevelop开始。

1 个答案:

答案 0 :(得分:0)

这似乎是KDevelop的一个问题。从控制台运行测试不会更改工作目录。

我创建了一个错误报告:https://bugs.kde.org/show_bug.cgi?id=349378