CMake配置失败,“cl.exe无法编译简单测试程序”

9fkzdhlc  于 2022-12-18  发布在  其他
关注(0)|答案(6)|浏览(316)

我正在尝试使用CMake为MSVC++2010构建一个解决方案。因为我安装了Visual Studio 2012,它不再工作。CMake带有以下错误消息:C编译器“C:/Program Files(x86)/Microsoft Visual Studio 10.0/VC/bin/cl.exe”无法编译简单的测试程序。
在为我的问题搜索解决方案时,我发现了这个主题(Cmake无法为Visual Studios 10 amd 64配置项目),虽然它解决了我的问题,但该解决方案对我不起作用。
任何帮助都将不胜感激。

llmtgqce

llmtgqce1#

我在Win7上也遇到了同样的问题。
对我有效的是@Andre在评论中提出的建议:
1.在VS安装目录中的cl.exe上右键单击-〉Properties(CMake错误中显示了确切的路径);
1.选择“兼容性”选项卡;
1.在“特权级别”框中选中“以管理员身份运行此程序”。

disbfnqx

disbfnqx2#

我也遇到了同样的问题。上面的解决方案对我不起作用。我的问题在研究this post后得到了解决。
首先,检查您的系统上是否安装了.NET 4.5。如果安装了,则很可能是该问题导致的。请尝试升级到VS2010 SP1或将.NET降级到4.0

原因:

出现此错误是因为您在系统中实际安装了Visual C++ 2010之后安装了Visual C++ 2012;另一个原因是.net框架4.5取代了.net框架4.0;.net框架损坏的文件;

如何解决

从系统中卸载.NET Framework 4.5;然后下载并安装.NET Framework 4.0;这应该能解决你的问题

hk8txs48

hk8txs483#

我遇到过这个问题,我用这个方法解决了。你应该在控制台运行cmake,命令像

>vcvars32  (to set some system vars, C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\vcvar32.bat)

>cmake .. -G"NMake Makefiles" (.. is your code folder) 

>nmake  (It will work well!)

你应该在一个控制台上做这个工作,不要打开另一个。

mgdq6dx1

mgdq6dx14#

我遇到了完全相同的问题。我通过在cmake之前添加一个命令来解决
第一个月
vcvarsall.bat的路径和体系结构在您的计算机上可能不同。
根据Usage of vcvarsall.bat,此命令用于为命令行编译设置合适的环境变量。

h22fl7wq

h22fl7wq5#

对于Visual Studio 2017和使用cmake,我收到以下错误消息

-- Selecting Windows SDK version 10.0.17134.0 to target Windows 10.0.18363.
-- The C compiler identification is MSVC 19.14.26433.0
-- The CXX compiler identification is MSVC 19.14.26433.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - failed
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.14.26428/bin/Hostx86/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.14.26428/bin/Hostx86/x64/cl.exe - broken
CMake Error at C:/Program Files/CMake/share/cmake-3.18/Modules/CMakeTestCCompiler.cmake:66 (message):
  The C compiler

    "C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/VC/Tools/MSVC/14.14.26428/bin/Hostx86/x64/cl.exe"

  is not able to compile a simple test program.

我通过运行vcvars140.bat脚本设置构建环境解决了这个问题(如下所示)。

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\Tools\vsdevcmd\ext\vcvars> .\vcvars140.bat
nhaq1z21

nhaq1z216#

为了在shell* 上使用Microsoft Visual C++编译器和链接器 *,您必须设置some specific environmental variablesPATHINCLUDELIB

相关问题