首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用cmake时发生了奇怪的错误

使用cmake时发生了奇怪的错误
EN

Stack Overflow用户
提问于 2009-12-13 13:26:33
回答 4查看 10.6K关注 0票数 7

有没有人知道“C编译器”cl不能编译一个简单的测试程序。意思是?

我试图在MSVC 9上使用Wt编译CMake。

操作系统是Windows。

以下是完整的日志:

检查C编译器的工作情况: cl检查C编译器的工作情况: cl - I:/Program / CMake 2.8/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:50 (MESSAGE)上的CMake错误:C编译器"cl“无法编译简单的测试程序。 它失败的输出如下: 更改Dir: I:/SophisPal/build/CMakeFiles/CMakeTmp 运行Build Command:C:\PROGRA~1\MICROS~1.0\Common7\IDE\VCExpress.exe CMAKE_TRY_COMPILE.sln /build调试/project cmTryCompileExec 微软(注册商标)视觉C++速成版9.0.30729.1版。 版权(C)微软公司2007。版权所有。 1> 1>Compiling... 1>Microsoft (R) 32位C/C++优化编译器版本15.00.30729.01用于80x86 1>Copyright (C)微软公司版权所有。 1>cl /Od /D "WIN32“/D _WINDOWS /D”_DEBUG /D“CMAKE_INTDIR=\”Debug\“ /D "_MBCS“/FD /RTCs /MDd /Fo"cmTryCompileExec.dir\Debug\” /Fd"I:/SophisPal/build/CMakeFiles/CMakeTmp/Debug/cmTryCompileExec.pdb“/W3 /c /Zi /TC /Zm1000 1> .\testCCompiler.c 1>testCCompiler.c 1>Compiling清单到资源..。 1>Microsoft (R) Windows (R)资源编译器版本6.1.6723.1 1>Copyright (C)微软公司版权所有。 1>Linking... 1>Embedding清单..。 1>Project : error PRJ0003 :错误生成“cmd.exe”。 1>Build日志保存在 "file://i:\SophisPal\build\CMakeFiles\CMakeTmp\cmTryCompileExec.dir\Debug\BuildLog.htm“ 1>cmTryCompileExec -1错误,0警告 ==========构建:0成功,1失败,0最新版本,0跳过========== CMake将无法正确生成此项目。Call Stack (最近一次先调用): CMakeLists.txt:7 (项目) 配置不完整,出现错误!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-12-13 13:34:11

我在谷歌上搜索了cmd.exe错误,并想出了此页。看起来Visual需要配置几个路径,这样它就知道如何找到cmd.exe了。下面是该线程的步骤:

您必须更改MSVS选项(工具菜单>选项>项目和解决方案> VC++目录),以确保 $(SystemRoot) $(SystemRoot)\System32 32 $(SystemRoot)\System32 32\wbem 在$(PATH)之前指定。

票数 6
EN

Stack Overflow用户

发布于 2012-03-06 12:00:33

检查您安装的其他工具是否覆盖了PATH变量。在我的例子中,这是发生的,症状(链接错误)是完全相同的。

票数 2
EN

Stack Overflow用户

发布于 2009-12-13 13:32:16

关键可能是:

代码语言:javascript
运行
复制
1>Project : error PRJ0003 : Error spawning 'cmd.exe'.

由于某种原因,MSVC无法执行“cmd.exe”,因此编译失败。

我猜想这个问题可能与%PATH%的设置有关;可能还有其他原因造成故障。

尝试手动执行CMake所做的操作--看看您是否得到了相同的错误。这将帮助您诊断问题是在CMake中(如果它在命令行中对您起作用)还是在您的一般环境中(如果它对您也不起作用)。

学习如何读取错误信息!

代码语言:javascript
运行
复制
Change Dir: I:/SophisPal/build/CMakeFiles/CMakeTmp

Run Build Command:C:\PROGRA~1\MICROS~1.0\Common7\IDE\VCExpress.exe CMAKE_TRY_COMPILE.sln /build Debug /project cmTryCompileExec

这是输出中的前两行。第一个指示CMake将目录更改为其创建的目录之一。第二个指示它在那里运行的命令。在运行命令之前,还需要了解它在目录中创建了哪些文件。

有了这些信息,您将不得不通过相同的步骤- 'cd‘,然后'vcexpress’。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1896505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档