在vscode上使用CMake指令的错误
简介
CMake是自动编写makefile一种工具,是对makefile的更上一层的抽象。它适合一些大型项目管理,我们只需要使用一些命令与参数即可调试与管理项目。
CMake在VScode上的快速使用
这里需要读者自行先安装号Cmake与Vscode以及VScode上的几个插件,Cmake、Cmake Tool、C/C 。然后开始配置。
这里有个帖子比较详细介绍了配置过程。
https://blog.csdn.net/jiasike/article/details/107474368
如果看到这三行说明配置成功。恭喜( ̄▽ ̄)"。
接下来说说我遇到的问题。
配置Cmake时遇到的一些问题。
一、未配置kits
我在按上面教程配置完cmake的时候执行make命令的时候提示我
CMake Error:CMaKe_C_COMPILER not set.这两句的意思是cmake没有配置好相应的kits。即cmake找不到适合的编译器来编译cpp文件。
原因一、环境变量里找不到cmake与minGW64的bin文件。(这里我犯错的原因是我把minGW里的一个exe文件名更改了。)把cmake与minGW64的bin文件添加到系统环境变量里面去就好。
原因二、有多种编译器导致系统无法选定:
我查找到的方法是在setting.json文件末尾里添加"cmake.generator": "MinGW Makefiles"这样一句话来解决(或者输入cmake -G “MinGW Makefiles”,作用是指定g 编译器)。然后就报了这样的错误CMake Error: CMake was unable to find a build program corresponding to “MinGW Makefiles”。然后查看原因是因为我把mingw32-make.exe名字给改成了make(我们在终端里使用cmake .之后编译文件调用的就是这个执行文件。)造成了cmake无法正常编译。
原因三、之前已经配置过编译器,然后更改编译器(比如通过建立task.json来指定新的编译器)
最简单的解决方法是把cmake建立的文件删除重新建立。熟悉task.json的人可以自己更改设定使编译器不冲突)。
二、使用cmake .指令没有构建出MakeFile文件
检查文件构建报的消息
-- Building for: Visual Studio 15 2017
-- Selecting Windows SDK version 10.0.16299.0 to target Windows 10.0.19044.
-- The C compiler identification is MSVC 19.16.27043.0
-- The CXX compiler identification is MSVC 19.16.27043.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: F:/Visual Studio 2017/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/cl.exe - skipped
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: E:/C project2
这里的cxx compiler的编译器是vs自带的(我的电脑装了两个ide,一个是微软的 vs还有一个是微软的vscode编辑器)。这里的cmake自动识别选择了MSVC我查看vscode上cmake的配置确认了我选择GUN编译器但是使用的时候还是被改了(目前没有找到原因,也没找到解决方法。有大佬知道的话,请指导!)我们更改指令cmake . -G "Unix Makefiles"确认编译器(具体看三)。
三、未找到build program “Unix Makefiles”
CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
cmake . -G “Unix Makefiles”=cmake . 查找make指令
make(对应windows下的mingw\bin\mingw-make.exe)
https://www.cnblogs.com/herelsp/p/8679200.html
make指令是linux的指令,在windows下相对应的是mingw-make。因为windows下没有该指令,只需要复制重命名为make.exe。这样就存在相同指令名字不同的make指令。
~~
后面如果有新的问题再继续补充。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfkchbe
-
Visual Studio 2022 首次安装出现 fatal error C1083: 没办法打开包括文件:“crtdbg.h”: No such file or directory
-
这才是完美的答案--解决CMake时“could not find any instance of Visual Studio”的问题
-
visual studio 2022VS 2022没办法读取内存的问题
-
opencv4.5.4 + VS2022 的开发环境搭建
-
使用visual studio 2022 启动后台程序的报错 ID为xxx的进程当前未运行
-
C++使用boost::filesystem实现遍历文件夹内文件
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13