本文详细阐述了在VS2019中遇到CMake编译错误的两种常见解决办法:一是切换到UnixMakefiles模式,二是针对Ninja编译的复杂问题提供深入指南。通过调整CMake设置,确保项目顺利构建。
摘要由CSDN通过智能技术生成
严重性代码说明项目文件行禁止显示状态
错误 CMake Error at C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.18/Modules/CMakeTestCCompiler.cmake:66 (message):
The C compiler
"C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.28.29333/bin/Hostx86/x64/cl.exe"
is not able to compile a simple test program.
It fails with the following output:
Change Dir: E:/Open_souce_project/cmake-examples-master/01-basic/B-hello-headers/out/build/x64-Debug (默认值)/CMakeFiles/CMakeTmp
Run Build Command(s):C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe cmTC_1c316 && [1/2] Building C object CMakeFiles\cmTC_1c316.dir\testCCompiler.c.obj
[2/2] Linking C executable cmTC_1c316.exe
FAILED: cmTC_1c316.exe
cmd.exe /C "cd . && "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -E vs_link_exe --intdir=CMakeFiles\cmTC_1c316.dir --rc=rc --mt=CMAKE_MT-NOTFOUND --manifests -- C:\PROGRA~2\MICROS~2\2019\COMMUN~1\VC\Tools\MSVC\1428~1.293\bin\Hostx86\x64\link.exe /nologo CMakeFiles\cmTC_1c316.dir\testCCompiler.c.obj /out:cmTC_1c316.exe /implib:cmTC_1c316.lib /pdb:cmTC_1c316.pdb /version:0.0 /machine:x64 /debug /INCREMENTAL /subsystem:console kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib && cd ."
RC Pass 1: command "rc /fo CMakeFiles\cmTC_1c316.dir/manifest.res CMakeFiles\cmTC_1c316.dir/manifest.rc" failed (exit code 0) with the following output:
系统找不到指定的文件。
ninja: build stopped: subcommand failed.
CMake will not be able to correctly generate this project. C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.18/Modules/CMakeTestCCompiler.cmake 66
在vs中,项目->CMake设置
最下面有个显示高级
将Ninja改成Unix Makefiles就可以避开这个问题了。
一般改成unix Makefiles就能直接用了。
如果执意要选用Ninja编译,那么可能会比较麻烦,下面是一个比较详细的链接。
另外一种处理方式
C# (
严重性 代码 说明 项目 文件 行 禁止显示状态)问题
当执
行程序时,输出内容为“
严重性 代码 说明 项目 文件 行 禁止显示状态 错误 无法将
文件“obj\Debug\week4.exe”复制到“bin\Debug\week4.exe ”的原因是程序在后台运
行,发生了冲突。
解决方法:
打开任务管理器,将你编写的程序关闭(如未能解决,连同编写的程序关联的应用也一同关闭)。
忘记截图啦,我觉得有图更直观,下次遇到问题我先截图吧。
因为遇到这个问题啦,记录下来,分享给有需要的小伙伴。
Check for working CXX compiler using: Visual Studio 10 -- broken
CMake Error at C:/Program Files/
CMake 2.8/share/
cmake-2.8/Modules/
CMakeTestCXXCompiler.
cmake:54
(message):
VS2019、Cmake搭建Orocos KDL环境
最近要用C++写一个求六轴机器人逆解的程序,在网上找了一些资料,决定使用开源机器人库OROCOS-KDL。在花费两天的时间后,终于能在VS2019上跑起来。
主要参考内容
https://zhuanlan.zhihu.com/p/65496560
前面的过程基本和该答主一样
Eigen3源码下载
git clone https://github.com/eigenteam/eigen-git-mirror.git
KDL源码下载
git clo
windows +
cmake +
vs2019 编程
这个方案可以暂时解决以上问题,但是他是将原有工程重新编译,
生成一个新的vs工程。
虽然新
生成的工程能够编译和运
行,但是工程的结构会和原来的工程有很大差异,多了很多东西,如果只是写自己的
项目,可以用这种方案。但是如果是团队开发,不推荐!
简单粗暴,重装系统即可
这个错误提示说明你在使用c语言的项目文件中的第71行代码使用了未定义的标识符"ASCII"。这意味着你在程序中使用了一个变量或常量,但是没有在之前的代码中声明或定义这个标识符。
解决这个问题的方法是找出使用了未定义的标识符的代码,然后在代码的适当位置声明或定义这个标识符。
例如,如果你想使用一个常量ASCII,你可以在代码的开头加入如下代码来声明这个常量:
const int ASCII = 65...
对于编译安装Qt时出现的"ninja: build stopped: subcommand failed"错误,这通常是由于编译过程中缺少某些依赖项或配置不正确所致。以下是一些可能的解决方法:
1. 确保已经安装了所有必要的依赖项。在编译Qt之前,需要安装一些开发工具和库,如编译器、CMake、ninja、OpenGL等。请根据麒麟操作系统的要求安装这些依赖项。
2. 检查Qt的配置选项是否正确。在配置Qt之前,可以使用以下命令检查当前系统的配置选项:
./configure -help
确保已正确设置所有必要的选项,并根据需要进行调整。
3. 清除之前的编译结果并重新尝试编译。可以尝试删除之前生成的构建文件夹,并重新运行编译命令。
4. 检查编译过程中的详细错误信息。当出现错误时,编译过程通常会打印详细的错误信息。请仔细阅读错误信息,并尝试解决其中的问题。
如果上述方法仍然无法解决问题,请提供更多详细的错误信息,以便我能够更好地帮助您。