我的項目結構是https://github.com/yumyai/cmake-sample。它類似於這個線程CMake: Project structure with unit tests中的項目。無法使用include(ctest)構建測試單元?
無論何時將include(CTest)
添加到頂級CMakeLists.txt中,我都無法構建測試文件(make test
不會生成任何內容)。但是如果我評論include(CTest)
,我可以使用make test
來構建單元測試執行。
這是正常行爲還是我忘了什麼?
我試過了,但它不起作用。 ('ctest -N'顯示正確的測試編號,但'make test'仍然按主題描述失敗)。你有沒有在頂層目錄下試用?我建立在./build目錄而不是在項目的頂層。 哦,而且「沒有任何東西是建造的」,因爲根本沒有可執行文件。我在每次迭代中清除一切,以確保沒有任何不妥。 –
啊 - 我從來沒有發現這一點,因爲它不是在MSVC的Windows上的問題,但你不應該叫你的目標「測試」。嘗試將名稱更改爲例如「測試」或「my_test」。 (請參閱http://stackoverflow.com/a/736838/424459)。我會更新我的其他答案以反映這一點。另外,你需要從src/CMakeLists.txt中的'add_executable(demo main.cpp Sqr)'中刪除額外的'Sqr' – Fraser
謝謝,爲我改變了測試工作的名字。 –