【环境配置】vscode配置C C++开发和调试环境
按照本教程配置好之后,不再需要写任何tasks.json和launch.json文件,减轻记忆负担,即使是调试程序,也不用再写这些文件了,跟着做就能得到一个很好的集成开发环境
目录
msys2的安装与配置
msys2的安装比较简单,默认安装路径为C:\msys64,这个路径可以不用修改,因为vscode的cmake tools插件会自动扫描到这个路径,就不用手动添加这个工具链
pacman的一些常用命令
| 命令 | 描述 |
|---|---|
pacman -S <package_name> |
从官方软件仓库安装软件包 |
pacman -Ss <search_term> |
在软件仓库中搜索软件包 |
pacman -R <package_name> |
从系统中移除软件包 |
pacman -Syu |
升级所有已安装的软件包 |
pacman -Qe |
列出已显式安装的软件包 |
pacman -Sc |
清理软件包缓存 |
pacman配置清华镜像源
sed -i "s#https\?://mirror.msys2.org/#https://mirrors.tuna.tsinghua.edu.cn/msys2/#g" /etc/pacman.d/mirrorlist*
该命令会把 /etc/pacman.d/mirrorlist* 文件中的msys2的源修改为清华源,下载速度更快
pacman 需要安装以下包
- base-devel
- mingw-w64-ucrt-x86_64-toolchain
- mingw-w64-ucrt-x86_64-cmake
- mingw-w64-ucrt-x86_64-clang-tools-extra
通过以下命令,安装上面这些包
pacman -S base-devel mingw-w64-ucrt-x86_64-toolchain mingw-w64-ucrt-x86_64-cmake mingw-w64-ucrt-x86_64-clang-tools-extra
Note:
- msys2的大部分包都是以mingw-w64+环境+包名命名的,所以很多时候,安装包之前,可以先用
pacman -Ss <package>来获取完整的包名- 你可以选择把MSYS2 UCRT64集成到Windows Terminal和vscode的终端里,这一部分内容,可以参考terminals和IDES and Text Editors,这两个配置都是比较简单的,而且集成之后更加方便。
vscode的配置
vscode的安装就不详细展开了,主要用到四个插件
C/C++clangdCMakeCMake Tools
除此之外,还需要把以下配置添加到vscode的配置文件中,
"C_Cpp.autocomplete": "disabled", // 禁用C/C++插件的提示功能,与clangd插件冲突
"clangd.detectExtensionConflicts": false, // 禁用clangd插件检测冲突,因为C/C++插件的提示功能已经被禁用了
"clangd.path": "C:\\msys64\\ucrt64\\bin\\clangd.exe",// 指定clangd路径
"cmake.cmakePath": "C:/msys64/ucrt64/bin/cmake.exe", // 指定cmake路径
测试环境
接下来可以快速写一个helloworld项目进行测试,打开一个全新的目录,
ctrl+shit+p 调出面板,输入cmake,选择quickstart

输入项目名称

选择类型 C 或者 C++项目

开发可执行文件 还是 库文件

cmake tools自动为我们创建了main.cpp和CMakeLists.txt文件

可以直接双击下方状态栏运行和调试按钮

运行:

调试:

可以看到,非常的方便,再也不用去写tasks.json和launch.json文件了
【环境配置】vscode配置C C++开发和调试环境的更多相关文章
- Eclipse IDE配置PHP开发、调试环境
前言 使用java语言开发的朋友想必对Eclipse开发工具已经不陌生了,那么Eclipse作为java主流的开发工具,是否能够开发PHP项目呢?答案如你所想,肯定是可以的!以下就是该IDE下如何配置 ...
- 搭建Go开发及调试环境(LiteIDE + GoClipse)
搭建Go开发及调试环境(LiteIDE + GoClipse) -- Windows篇 这里以Windows7 64位为例,如果是32位环境需安装对应版本程序. 一.安装golang1.2.2 1.3 ...
- ubuntu基于VSCode的C++编程语言的构建调试环境搭建指南
ubuntu基于VSCode的C++编程语言的构建调试环境搭建指南 首先安装g++ sudo apt install g++ 检查是否安装成功: 在插件栏安装插件c/c++.code runner: ...
- 软件-集成开发环境:IDEA(Java 语言开发的集成环境)
ylbtech-软件-集成开发环境:IDEA(Java 语言开发的集成环境) IDEA 全称IntelliJ IDEA,是用于java语言开发的集成环境(也可用于其他开发语言),IntelliJ在业界 ...
- Ubuntu16.04下配置VScode的C/C++开发环境
博客转载:https://blog.csdn.net/weixin_43374723/article/details/84064644 Visual studio code是微软发布的一个运行于 Ma ...
- 使用 Visual Studio Code 搭建 C/C++ 开发和调试环境
文章目录 1. 安装 C/C++ 插件 2. 安装 MinGW-w64 并配置好环境变量 3. 测试环境变量是否配置正确 4. 创建和设置 C 语言开发工作区 5. 编写你的第一个 C 语言程序 6. ...
- 笔记:MAC OS X下配置PHP开发、调试环境
操作系统:MAC OS X 工具:MAMP.PhpStorm.xdebug.chrome 1.下载MAMP 2.安装比较简单,安装完成后,应用程序中会增加如下4个应用 MacGDBp是PHP调试器,使 ...
- MAC OS X下配置PHP开发、调试环境
操作系统:MAC OS X 工具:MAMP.PhpStorm.xdebug.chrome 1.下载MAMP 2.安装比较简单,安装完成后,应用程序中会增加如下4个应用 MacGDBp是PHP调试器,使 ...
- 【Qt】Qt在Windows下的开发与调试环境配置
前文已经交待了从源码编译Qt自定义版本.现在可以开始配置一下开发与调试程序并写个Hello World了. 1. IDE 虽然Qt官方有VS插件使我们可以在VisualStudio中开发Qt应用,但我 ...
- 搭建Eclipse开发和调试环境(真机)
由于工作原因,最近开始了Android开发.之前接触过一段时间Android,还是在2.x时代. 那个时候搭建开发环境还是挺麻烦的.又是Eclipse,又是ADT的,不同的版本还要安装对应开发包.现在 ...
随机推荐
- openai chatGPT 原理通俗介绍
引言 近年来,随着深度学习技术的不断发展,自然语言处理(NLP)领域取得了长足的进步.ChatGPT(Generative Pre-trained Transformer)作为一种先进的语言生成模型, ...
- 【Unity3D】UI Toolkit简介
1 前言 UI Toolkit 是一种基于 Web 技术的 GUI 框架,是为了解决 UGUI 效率问题而设计的新一代 UI 系统(UGUI 的介绍详见→UGUI概述).与 UGUI 不同,UI ...
- 【Unity3D】绘制物体表面三角形网格
1 仅绘制三角形网格 1)创建游戏对象 创建一个空对象,重命名为 Grid,并在其下添加需要绘制网格的对象,如下: 场景显示如下: 2)添加脚本组件 GridController. ...
- 虚拟机ubuntu配置静态IP
手头搭建了几天虚拟机ubuntu用来做微服务环境的搭建,目前使用的是DHCP分配的网络,每次启动各台服务器的ip都是随机的 管理起来有点乱,所以就要把他们配置成静态的ip.具体操作步骤如下: 我直接用 ...
- SpringBoot中Redis的基础使用
基础使用 首先引入依赖 <!-- redis依赖--> <dependency> <groupId>org.springframework.boot</gro ...
- P1481魔族密码 题解(字典树)
魔族密码 题目背景 风之子刚走进他的考场,就-- 花花:当当当当~~偶是魅力女皇--花花!!^^(华丽出场,礼炮,鲜花) 风之子:我呕--(杀死人的眼神)快说题目!否则---_-### 题目描述 花花 ...
- django学习第五天---model类的属性参数,单表ORM数据库增删改查动作,查询的13个API接口
model类的属性参数 比如:models.CharField(null=True,blank=True) (1)null 如果为True,Django将用NULL在数据库中存储空值.默认值时Fals ...
- django中update_or_create()
update_or_create()方法中有一个defaults参数 模型字段会根据查询条件进行查询,如果查询到了,那么就用defaults对应的值去更新字段,如果没有查到就用defaults对应的值 ...
- 【Azure 应用服务】Azure Function 部署槽交换时,一不小心把预生产槽上的配置参数交换到生产槽上,引发生产错误
问题描述 部署Function代码先到预生产槽中,进行测试后通过交换方式,把预生产槽中的代码交换到生产槽上,因为在预生产槽中的设置参数值与生产槽有不同,但是在交换的时候,没有仔细检查.导致在交换的时候 ...
- liquibase customChange
liquibase customChange liquibase changeset 执行Java代码. liquibase支持yml等文件,支持引入sql文件,还支持Java这种方式执行change ...