无法使用Visual Studio 2010 Express配置CMake

无法使用Visual Studio 2010 Express配置CMake,cmake,Cmake,有人能帮我吗?我正在尝试用Visual Studio 2010 Express配置CMake,但失败了。整个错误消息如下所示: C编译器标识为MSVC 16.0.30319.1 CXX编译器 标识为MSVC 16.0.30319.1检查C编译器是否工作 使用:Visual Studio 10使用:Visual Studio 10检查C编译器是否正常工作 Studio 10--在C:/Program Files/CMake处出现损坏的CMake错误 2.8/share/cmake-2.8/Modu

有人能帮我吗?我正在尝试用Visual Studio 2010 Express配置CMake,但失败了。整个错误消息如下所示:

C编译器标识为MSVC 16.0.30319.1 CXX编译器 标识为MSVC 16.0.30319.1检查C编译器是否工作 使用:Visual Studio 10使用:Visual Studio 10检查C编译器是否正常工作 Studio 10--在C:/Program Files/CMake处出现损坏的CMake错误 2.8/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:61(消息):C编译器“C:/Program Files/Microsoft Visual Studio 10.0/VC/bin/cl.exe“无法编译简单的测试程序

它失败,输出如下:

更改目录:C:/OpenCV2.2/build/CMakeFiles/CMakeTmp

运行构建 命令:C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
cmTryCompileExec2312584318.vcxproj/p:Configuration=Debug
/p:VisualStudioVersion=10.0

Microsoft(R)生成引擎版本4.0.30319.17929

[Microsoft.NET Framework,版本4.0.30319.17929]

版权所有(C)微软公司。版权所有

cl /c /Zi /W3 /WX- /Od /Ob0 /Oy- /D WIN32 /D _WINDOWS /D _DEBUG /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise
构建开始于2013年5月30日20:16:01

项目
“C:\OpenCV2.2\build\cmakfiles\CMakeTmp\cmTryCompileExec2312584318.vcxproj” 在节点1上(默认目标)

PrepareForBuild:

Creating directory "cmTryCompileExec2312584318.dir\Debug\".
Creating directory "C:\OpenCV2.2\build\CMakeFiles\CMakeTmp\Debug\".
初始化BuildStatus:

Creating "cmTryCompileExec2312584318.dir\Debug\cmTryCompileExec2312584318.unsuccessfulbuild"
因为指定了“AlwaysCreate”

CLC编译:

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /Zi /W3 /WX- /Od /Ob0 /Oy- /D WIN32 /D _WINDOWS /D _DEBUG /D
“CMAKE\u INTDIR=”Debug\”/D\u MBCS/Gm-/RTC1/MDd/GS/fp:精确 /Zc:wchar\u t/Zc:forScope/Fo“cmTryCompileExec2312584318.dir\Debug\” /Fd“C:/OpenCV2.2/build/cmakfiles/CMakeTmp/Debug/cmTryCompileExec2312584318.pdb” /Gd/TC/analyze-/errorReport:queue testCCompiler.c 适用于80x86的Microsoft(R)32位C/C++优化编译器版本16.00.30319.01 版权所有(C)微软公司。版权所有

cl /c /Zi /W3 /WX- /Od /Ob0 /Oy- /D WIN32 /D _WINDOWS /D _DEBUG /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /RTC1 /MDd /GS /fp:precise
/Zc:wchar\u t/Zc:forScope/Fo“cmTryCompileExec2312584318.dir\Debug\” /Fd“C:/OpenCV2.2/build/cmakfiles/CMakeTmp/Debug/cmTryCompileExec2312584318.pdb” /Gd/TC/analyze-/errorReport:queue testCCompiler.c

testCCompiler.c
资源汇编:

C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\rc.exe /nologo /fo"cmTryCompileExec2312584318.dir\Debug\cmTryCompileExec2312584318.exe.embed.manifest.res" cmTryCompileExec2312584318.dir\Debug\cmTryCompileExec2312584318_manifest.rc
链接:

C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\link.exe /ERRORREPORT:QUEUE
/输出:“C:\OpenCV2.2\build\cmakfiles\cmakemp\Debug\cmTryCompileExec2312584318.exe” /增量/NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /显示 /清单文件:“cmTryCompileExec2312584318.dir\Debug\cmTryCompileExec2312584318.exe.intermediate.manifest”/MANIFESTUAC:“level='asInvoker'uiAccess='false'”/Debug /PDB:“C:/OpenCV2.2/build/CMakeFiles/CMakeTmp/Debug/cmTryCompileExec2312584318.PDB” /子系统:控制台/TLBID:1/DYNAMICBASE/NXCOMPAT /IMPLIB:“C:/OpenCV2.2/build/CMakeFiles/CMakeTmp/Debug/cmTryCompileExec2312584318.lib” /机器:X86 cmTryCompileExec2312584318.dir\Debug\cmTryCompileExec2312584318.exe.embed.manifest.res cmTryCompileExec2312584318.dir\Debug\testCCompiler.obj/machine:X86/Debug

链接:致命错误LNK1123:转换为COFF:文件期间失败 无效或损坏
[C:\OpenCV2.2\build\cmakfiles\CMakeTmp\cmTryCompileExec2312584318.vcxproj]

  0 Warning(s)
  1 Error(s)
已完成建筑项目
“C:\OpenCV2.2\build\cmakfiles\CMakeTmp\cmTryCompileExec2312584318.vcxproj” (默认目标)--失败

生成失败

 "C:\OpenCV2.2\build\CMakeFiles\CMakeTmp\cmTryCompileExec2312584318.vcxproj"
(默认目标)(1)->

(链接目标)->

[C:\OpenCV2.2\build\cmakfiles\CMakeTmp\cmTryCompileExec2312584318.vcxproj]

  0 Warning(s)
  1 Error(s)
时间流逝00:00:00.64

CMake将无法正确生成此项目。呼叫 堆栈(最新调用优先):CMakeLists.txt:47(项目)

配置不完整,出现错误


有什么建议吗?

在win7x64上CMake也有同样的问题。这个问题与.NET4.5有关。如果您不想卸载4.5,并且您的解决方案已经安装,请确保卸载,否则将无法生成

要解决CMake问题,您必须在计算机上卸载.NET 4.5,然后重新安装.NET 4.0,以使CMake正常工作(4.5将删除所有4.0的程序集,等等!)

显然,4.5已经安装,无法安装4.0,因此请使用Windows控制面板进行卸载(控制面板\程序\程序和功能)


C将此设置为错误,而不是MS问题。

先安装,然后安装。为我解决了这个问题。

如果安装了NetFramework4.5,则必须将VS2010更新为SP1,以使某些内容正常工作。有时,只需在“项目配置”>“链接器设置”中设置“增量生成”,即可解决此问题。如果您在VS 2010之后安装了VS 2012,那么在更新VS 2010之前,您需要在MSDN上搜索有关避免依赖关系的文章。我的猜测是,在将旧版本升级到新服务包之前,您必须卸载新版本。MSDN中有一组页面解释每个步骤。只需谷歌一下。我对CMake也有这个问题。我就是这样解决的。此外,我已经安装了Windows7SDK。因此,我不确定是否需要安装它来解决此问题。

在我的情况下,重新启动后安装解决了我的问题。 根本没有安装Windows SDK 7.1或其他任何东西


如果您不想重新安装.NET Framework和/或进行400mb Windows SDK更新,请先尝试此较轻的解决方案。

同样的问题已按您的方式解决。VS 2010 SP1更新在安装Windows 7 SDK之前给了我错误,因此它是必需的。我还卸载了VS 2012(删除了NF 4.5?)。获取
ammintrin.h
似乎也很有帮助。