CMake3.7構建OpenCV3.2不能找到VS2017編譯器(Win7 32bit),求大神解答?

VS2017已安裝:

--使用C++的桌面開發

--------Visual C++核心桌面功能

--------VC++ 2017 v141工具集(x84,x64)

--------C++分析工具

--------Windows 10 SDK(10.0.14393.0 )

--------用於CMake的Visual C++工具

--------Visual C++ ATL支持

--Windows 8.1 SDK

CMake報錯信息:

The CXX compiler identification is unknown

The C compiler identification is unknown


CMake Error at CMakeLists.txt:104 (project):

No CMAKE_CXX_COMPILER could be found.


CMake Error at CMakeLists.txt:104 (project):

No CMAKE_C_COMPILER could be found.

Configuring incomplete, errors occurred!


See also "E:/Test/CMakeFiles/CMakeOutput.log".


See also "E:/Test/CMakeFiles/CMakeError.log".


你遺漏了一個很重要的信息,CMake版本號。Visual Studio 2017剛出來,從The CXX compiler identification is unknown這裡的信息來看,若你的環境以及相關變數沒有問題,一個可能就是你使用的CMake還並不支持VS 2017的編譯器識別,根據我查詢到的Release Notes, CMake是從3.7 CMake 3.7 Release Notes 才開始試驗性支持VS 2017 RC。


裝vs時會在開始菜單里創建一堆cmd的快捷方式,比如

Developer Command Prompt for VS 2017 RC

在這些東西裡面打開cmake就可以了,當然打開之後還是有個坑,你可能會需要10240的sdk。

當然cmake生成項目之後你可以在項目里改成別的版本的sdk


從命令行,先輸入vcvarsall.bat x86.

然後cmake-gui.

或者先運行從VS自帶的cmd.

當然cmake版本要最高.


如果CMake的等級足夠高(比如3.8)還是提示這個錯誤的話,可以試試用VS下的那個CMake先configure你的編譯器信息,然後再用你自己安裝的CMake生成sln文件。


推薦閱讀:

解決 Windows 下 Python 安裝 Dlib 的問題:Cmake 找不到 boost
vs2017怎麼用內置CMAKE編譯opencv??
macOS Sierra10.12.6下安裝OpenCV3.3.0

TAG:OpenCV | MicrosoftVisualStudio | CMake | VS2017 |