C compiler identification is unknown The CXX compiler identification is unknown

问题

最近在使用VS2015和VS2017时,都遇到了使用CMake发生如下错误:

C compiler identification is unknownThe CXX compiler identification is unknown
  • 1
  • 2

首先声明,在使用CMake之前都已经使用VS2015/VS2017编写过简单的C/C++程序,测试证明VS已经安装成功。 
另外也不存在在CMake时选择了错误的Generator。

原因

排除以上两种情况后,网上的大部分教程都无法参考。 
经过大量的测试,发现问题原因如下: 
自VS2015之后,VS的安装包日益增大。导致在安装时,并不需要也不可能安装所有工具包,因此需要手动安装VS,根据需要的工具包。由于只使用C/C++,我只选择性安装了标题带有C/C++相关的功能包。虽然在使用VS工具编译C/C++时,并没有什么问题,但是在使用CMake时可能会遭遇缺少一些工具包而导致问题。 
另一方面是,VS2017是非常新的编译器,请务必下载最新的CMake才能保证正常工作。

解决方案

VS2015 
一定注意安装Win10 SDK,如下图: 
这里写图片描述

这里写图片描述 
VS2017 
1. 下载最新的CMake 
2. 安装必须的组件,如下图 
这里写图片描述 
这里写图片描述
保证Win10 SDK被选中,如下图: 
这里写图片描述

猜你喜欢

转载自blog.csdn.net/rainjoe9/article/details/80181219
今日推荐