我希望能够以类似的方式运行cmake
,如
cmake -H<src-directory> -B<bld-directory>
cmake --build <bld_directory>
运行ctest
,如
ctest --build <bld_directory>
显然从遗嘱中运行ctest
,
但如果我能告诉ctest
在哪里查找其配置文件以及测试可执行文件所在的位置,那就太好了。
从文档来看,如果可能的话,它不是很清楚(或者我可能没有找到正确的位置)。
如果有人能够了解这是否可行,那会很棒吗? 非常感谢, 吉日
答案 0 :(得分:3)
我找不到通过ctest
选项执行此操作的方法,但使用链接到ctest的规则make test
是可行的。
在构建文件夹中由cmake生成的Makefile
中,您可以找到规则:
#Special rule for the target test
test:
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running tests..."
/usr/bin/ctest --force-new-ctest-process $(ARGS)
.PHONY : test
make
提供了-C /path/to/build_directory/
所需的选项,您可以使用ctest
ARGS='your ctest options here'
个选项
例如,您可以从系统中的任何目录中编写:
make test -C /path/to/build_folder ARGS='-R SpecificTestIWantToRun -VV'
或
cmake --build <bld_directory> --target test -- ARGS="<ctest_args>"