Visual C++ Build Tools是微软从Visual Studio 2015开始推出的单独的C/C++编译工具链,可以独立于Visual Studio运行。
Announcing Visual C++ Build Tools 2015 – standalone C++ tools for build environments - C++ Team Blog
Microsoft C++ Build Tools - Visual Studio
Clion IDE支持通过Visual Studio的工具链来进行编译,对于只使用Clion进行日常开发的人员来说,安装完整的Visual Studio是没有必要的,可以选择安装Visual C++ Build Tools(这里以2015为例)。
但是Clion似乎无法正确地识别Visual C++ Build Tools(找到了编译器的路径,但是版本号显示未找到):
使用Process Monitor 可以跟踪程序打开的文件,发现Clion调用了以下这个脚本:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat
把脚本打开来看一下:
if exist "%~dp0..\common7\IDE\devenv.exe" goto setup_VS
if not exist "%~dp0..\common7\IDE\wdexpress.exe" goto setup_buildsku
:setup_VS
:SetVisualStudioVersion
set VisualStudioVersion=14.0
goto :eof
:setup_buildsku
if not exist "%~dp0..\..\Microsoft Visual C++ Build Tools\vcbuildtools.bat" goto usage
set CurrentDir=%CD%
call "%~dp0..\..\Microsoft Visual C++ Build Tools\vcbuildtools.bat" %1 %2
cd /d %CurrentDir%
goto :eof
Visual C++ Build Tools 因为没有IDE,所以走的是setup_buildsku分支,对比一下setup_VS分支就会发现少了 set VisualStudioVersion=14.0 这一句,把这一句复制到setup_buildsku下面:
:setup_buildsku
if not exist "%~dp0..\..\Microsoft Visual C++ Build Tools\vcbuildtools.bat" goto usage
set CurrentDir=%CD%
set VisualStudioVersion=14.0
call "%~dp0..\..\Microsoft Visual C++ Build Tools\vcbuildtools.bat" %1 %2
cd /d %CurrentDir%
goto :eof
再次在Clion中设置就可以正确地识别了: