错误提示
70>CMake Error at src/base/cmake_install.cmake:63 (file): 70> file INSTALL cannot find 70> "E:/Projs/algs/colmap/colmap_build/src/base/Release/camera_rig_test.exe". 70>Call Stack (most recent call first): 70> src/cmake_install.cmake:61 (include) 70> cmake_install.cmake:65 (include) 70> 70> 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: 命令“setlocal 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: "D:ProsIDEIDE Toolscmake-3.15.0-rc1-win64-x64incmake.exe" -DBUILD_TYPE=Release -P cmake_install.cmake 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: if %errorlevel% neq 0 goto :cmEnd 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: :cmEnd 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: :cmErrorLevel 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: exit /b %1 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: :cmDone 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: if %errorlevel% neq 0 goto :VCEnd 70>C:ProgramDevMicrosoft Visual Studio2017EnterpriseCommon7IDEVCVCTargetsMicrosoft.CppCommon.targets(138,5): error MSB3073: :VCEnd”已退出,代码为 1。
解决方案1
该问题的出现,解决时,根据原因有两种方法:
(1)由于在CMake GUI中CMAKE_INSTALL_PREFIX指定为C盘目录,所以install编译生成时需要权限。此时,需要以管理员身份运行Vs即可。
(2)cmake时,设置的build目录不对的原因。如在源码(CMakelist.txt所在目录)主目录的外侧,新建了build的目录。而不是在正确的在主目录下新建这个build目录。
而不该
解决方案2
如果,解决方案1不能解决你的问题,可以考虑,将VS工程,设置到Release模型下,再进行install的运行。
实践证明,到解决方案2,基本上能解决我已经遇到的所有情况了。
参考
VS2015+Cmake安装OpenPose库遇到:error MSB3073: 命令“setlocal.... ", tingzhushaohua, 2018-08.