我在 Windows 上为 MSVC++ 项目配置 CMake 构建项目。它构建可执行文件,然后将其安装到定义的目录中。在我的情况下是:
${CMAKE_SOURCE_DIR}/x64/${CMAKE_BUILD_TYPE}/
可执行文件在同一目录中有一个文件夹,其中包含在启动时加载的文件。如果我手动启动 .exe,它会打开并运行正常。但我想通过 ctest 来完成。我这样定义 ctest :
add_test(ENGINE_TEST1 ${CMAKE_SOURCE_DIR}/x64/${CMAKE_BUILD_TYPE}/MyApp.exe
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/x64/${CMAKE_BUILD_TYPE})
当我从 cmd 调用时:
ctest
可执行文件正在启动但立即崩溃并出现错误:
调试错误!
程序:../..../.../MyApp.exe
R6010 -abort() 有
被调用。
实际上,在检查 CMake 的 Last Test.log 文件时,它显示它不是在“WORKING_DIRECTORY”中运行测试,而是在 CMake 构建 MyApp.exe 的目录中运行测试。我该如何更改它?