04-vscode搭建cmake的编译环境

这篇具有很好参考价值的文章主要介绍了04-vscode搭建cmake的编译环境。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

vscode+mingw搭建C/C++环境系列

01.vscode+mingw搭建编译调试环境

02-vscode编译调试单个源文件程序

03-vscode编译调试多个源文件程序

04-vscode搭建cmake的编译环境


一、简述

前面的文章中提到过通过修改settings.json文件和tasks.json文件可以完成多个源文件程序编译运行,但是如果源文件较多,每次都手动修改编译参数,那么比较麻烦,所以本文讲述下如何在vscode中使用cmake工程。

二、vscode搭建cmake的编译环境(方法1)

1.配置cmake构建目录(可忽略)

文件–》首选项–》搜索cmake,配置cmake的一些参数和中间文件路径(可不用设置),如下图:cmake的构建目录在当前的工作区的build的目录下。
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript

2.选择cmake的构建套件(gcc)

未配置cmake工程前,
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript
快捷键: shift+alt+p 输入cmake,选择"CMake Quick Start"
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript
选择cmake的构建套件,这里使用的是gcc mingw
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript
配置cmake工程完后,下面会出现配置选项
1:编译选项:Debug、release、RelWithDebugInfo
2:选择的编译器,GCC 还是VC
3:调试程序
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript

3.编写CMakeLists.txt

project(test)

add_executable(test main.cpp add.cpp)

文件结构: build里面存放编译过程中的中间文件,该目录的配置在前面的配置cmake参数
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript

4.启动调试运行

成功构建cmake工程文件后,可点击下面按钮,进行运行调试
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript

三、vscode搭建cmake的编译环境(方法2)

1.cmake构建说明

  • 官网上下载一个cmake程序,将安装的cmake的bin目录添加到PATH的环境变量
  • 编写简单的CMakeLists.txt
project(test)
add_executable(main main.cpp add.cpp)
  • 多文件编译调试
mkdir build   		 //创建build目录
cd    build   		 //进入build目录
					 //如果电脑上已经安装了vs,cmake可能会调用微软的MSVC的编译器,
					 //使用cmake -G "MinGW Makefiles" ../代替 cmake ../
					 //cmake主要寻找CMakeLists.txt文件
cmake  ../   		//根据CMakeLists.txt文件生成MakeFile文件
mingw32-make.exe    //根据MakeFile文件编译成可执行的运行程序
  • 配置launch.json文件:调试时配置
  • 配置tasks.json文件: 调试之前的构建配置

2.配置launch.json文件

  • 创建launch.json文件
    vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript
    添加调试配置:可以选择 调试程序或者附加到某个进程上调试
    vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript
    launch.json
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
     
        {
            "name": "main", // 配置名称,将会在启动配置的下拉菜单中显示  
            "type": "cppdbg", // 配置类型,这里只能为cppdbg  
            "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)  
            "program": "${workspaceFolder}/build/main.exe", // 将要进行调试的程序的路径  
            "args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可  
            "stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false  
            "cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录  
            "environment": [],
            "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台  
            "MIMode": "gdb",
            "miDebuggerPath": "C:\\Users\\Admin\\AppData\\Local\\Programs\\mingw64\\bin\\gdb.exe", 
            // miDebugger的路径,注意这里要与MinGw的路径对应  
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "build", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc  
        }
    ]
}

主要参数说明:

  • program:要调试的程序的全路径名称
  • args:调试时传入的命令行参数
  • “cwd”: “${workspaceFolder}”:调试时进入到当前的工作目录
  • miDebuggerPath:使用的调试器的全路径
  • preLaunchTask:表示调试前需要做的任务操作,"preLaunchTask"中的"build"必须要和tasks.json文件中的label的Value对应,否则在执行调试的时候,无法确认preLaunchTask需要执行什么操作

3.配置tasks.json文件

如图所示:在启动调试之前,执行launch.json文件中的preLaunchTask的build时,vscode会去查找对应的tasks.json文件中label为"build",而tasks.json中的build又依赖标签cmake和标签make的操作,
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript
tasks.json

{
    "tasks": [
        {
          "type":"shell",
          "label": "cmake",
          "command":"cmake",
          "args": [
            "../"
          ],
    
        },
        {
          "label": "make",
          "command":"mingw32-make",
          "args": [

          ],
        },
        {
            "label": "build",
            "dependsOn":[
                "cmake",
                "make"
            ]
        },
    ],
    "version": "2.0.0",
    "options": {
      "cwd": "${fileDirname}/build"
  },
}
  • “label”: “cmake”: 使用命令cmake,根据CMakeLists.txt创建MakeFile文件
  • “label”: “make”: 使用命令mingw32-make,根据MakeFile生成可执行的程序
    上述tasks.json文件,表示在每次调试之前都重新构建一次应用程序

4.配置settings.json文件

{
    "code-runner.executorMap": {

        "javascript": "node",
        "java": "cd $dir && javac $fileName && java $fileNameWithoutExt",
        "c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
        "cpp": "cd $dir/build && cmake ../ && mingw32-make &&  $dir/build/fileNameWithoutExt",
    }
}

将settings.json文件原本cpp编译命令里面的g++,修改为cmake构建工程。

5.启动调试运行

使用vscode里面的调试运行按钮,
Run Code: 依赖settings.json
调试C/C++文件: 依赖launch.json和tasks.json文件
vscode cmake编译,windows,# VSCode搭建编译环境,vscode,前端,javascript文章来源地址https://www.toymoban.com/news/detail-798717.html

到了这里,关于04-vscode搭建cmake的编译环境的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ESP32开发环境搭建Windows VSCode集成Espressif IDF插件ESP32_IDF_V5.0开发编译环境搭建

    下载网址:https://dl.espressif.com/dl/esp-idf/ 打开上面的网页,选择单击页面中 ESP32-IDF v5.0.2 - Offine Installer,5.0.2是当前最新版本,如果没有ESP32-IDF v5.0.2 - Offine Installer,说明官方有更新最新版本,如果想要安装此教程版本可以把页面翻到最下面,会列出所有历史版本供用户下载。

    2024年02月13日
    浏览(40)
  • ubuntu 搭建 cmake + vscode 的 c/c++ 开发环境

    clang-format c++ 整合 略 只需要安装如下两个插件即可 c/c++ 扩展是为了最基本的代码提示和调试支持 cmake language support 是为了提示 CMakeLists.txt 脚本 有可能安装了 cmake language support 还是没有代码提示, 注意配置 cmake 路径 main.cpp CMakeLists.txt 此时可以通过 终端 菜单的 运行任务 来运

    2024年02月08日
    浏览(37)
  • c++项目环境搭建(VMware+linux+ubantu+vscode+cmake)

    想运行一个c++项目,但是环境怎么整呢?b站走起!!! 链接:https://pan.baidu.com/s/1XJbR2F1boQ-CqV8P71UOqw  提取码:swin 八分钟完成VMware和ubuntu系统安装_哔哩哔哩_bilibili 按照视频来就行,别直接在计算机上安装linux系统,呜呜呜~~~找到一个博客,我跟着走之后发现硬盘被格式化了,

    2024年02月05日
    浏览(33)
  • VSCode+CMake+Arm GNU Toolchain搭建GD32开发环境

    一个串口收发简单例子。 https://github.com/Huffer342-WSH/GD32_CMake_Example 可以下载该工程,稍微了解一点cmake就可以简单修改直接使用。 GD32 CMake example 使用到的工具 编译与烧录 命令行 VSCode 调试 配合VSCode的marus25.cortex-debug插件实现调试功能 RTT使用方法 marus25.cortex-debug 手动连接 注意

    2024年02月11日
    浏览(28)
  • 测试驱动的嵌入式开发 002:VSCode + CMake + Unity 环境搭建

    本文是对《测试驱动的嵌入式 C 语言开发》第二章的实践。 这部分参考博文《基于Windows 的 VS Code C/C++ 编译环境搭建》。 安装 CMake ,在官网下载最新安装包。安装时选择 对所有用户添加 CMake 到系统 PATH 。 安装以下插件: CMake:VSCode 的 CMake 语言支持插件 CMake Tools:对插件

    2023年04月18日
    浏览(26)
  • Vscode+Cmake配置并运行opencv环境(Windows和Ubuntu大同小异)

    之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vs studio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vs code下

    2024年02月02日
    浏览(47)
  • windows下使用microsoft、intel、gnu不同编译器利用cmake和vscode对c++和fortran程序进行编译和调试

    由于编译器支持特性、编译后程序运行速度、安装使用便捷程度等的不同,我们往往会安装多种不同的编译器。对于c++语言主要的编译器有:microsoft、intel、gnu等,对于fortran语言则更多,包括gnu、intel、pgi等等。不同的编译器在一个系统下,往往需要利用一些手段进行区分,

    2024年02月05日
    浏览(46)
  • ubuntu20.04一键安装VScode搭建ROS编程环境

    VSCode 全称 Visual Studio Code,是微软出的一款轻量级代码编辑器,免费、开源而且功能强大。它支持几乎所有主流的程序语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,支持插件扩展,并针对网页开发和云端应用开发做了优化。

    2023年04月24日
    浏览(41)
  • CMake学习笔记-VSCode使用Cmake编译C++工程

    Win + MinGW + CMake + Git 官方教程1: https://cmake.org/cmake/help/latest/guide/tutorial/A%20Basic%20Starting%20Point.html 官方教程2: https://cmake.org/cmake/help/book/mastering-cmake/cmake/Help/guide/tutorial/index.html 官方练习材料1:https://github.com/Kitware/CMake.git 官方练习材料2:https://github.com/Kitware/CMake/blob/master/Help/guide

    2024年02月11日
    浏览(43)
  • Ubuntu下VsCode+CMake 交叉编译

    参考连接: Ubuntu下VsCode+CMake 交叉编译 VSCode与CMake搭配使用之基本配置 VSCode与CMake搭配使用之交叉编译 step1: Ctrl+Shift+p打开VSCode的指令面板,然后输入cmake:q ; 在窗口搜索:“ CMake:Edit user-loacl CMake kits ”会打开一个cmake-tools-kits.json的文件. 如果搜索不到这个文件,先把cmake :qui

    2024年02月02日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包