2016-07-28 70 views
6

我希望能夠以類似的方式,我可以像從不同目錄運行ctest比cmake使用的build目錄更好嗎?

cmake -H<src-directory> -B<bld-directory> cmake --build <bld_directory>

運行cmake運行ctest

ctest --build <bld_directory>

顯然,從將工作, 運行ctest但如果我可以告訴ctest在哪裏查找它的配置文件以及測試可執行文件所在的位置,那將會很好。

從文檔中不是很清楚(或者我可能沒有找到正確的位置),如果這是可能的話。

如果有人能說出這些可能或不可能的話,這會很好嗎? 非常感謝, 吉日

回答

2

我找不到通過ctest選項來做到這一點,但它使用鏈接到CTEST規則make test是可行的。

在你的build文件夾由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/的選項,你可以用ARGS='your ctest options here'

添加任何ctest選項例如,從您系統中的任何目錄可以編寫:

make test -C /path/to/build_folder ARGS='-R SpecificTestIWantToRun -VV'