1.launch.json文件基本设置

{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "gdb-debug",
"type":"cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/${workspaceFolderBasename}",// 调试的程序全路径
"args": ["app.conf"],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/build",
"preLaunchTask": "build", // 前置任务,前提是在 tasks.json 文件中定义了这个任务比如名为build的任务
"environment": [],
"externalConsole": false,
"MIMode": "gdb", // 调试引擎
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "Set Disassembly Flavor to Intel",
"text": "-gdb-set disassembly-flavor intel",
"ignoreFailures": true
}
]
},
{
"name": "vs-debug",
"type":"cppvsdbg",
"request": "launch",
"program": "${workspaceFolder}/build/${workspaceFolderBasename}",
"args": ["app.conf"],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/build",
"preLaunchTask": "build",
"environment": [],
"externalConsole": false
}
]
}

2.task.json

{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
// 自定义任务1: 创建build目录(命令:`mkdir -p build`,windows系统是在powershell中执行命令`mkdir -Force build`)
"label": "mkbuild",
"group": "build",
"command": "mkdir",
"type": "shell",
"args": [
"-p",
"build"
],
"windows": {
"options": {
"shell": {
"executable": "powershell.exe"
}
},
"args": [
"-Force",
"build"
],
}
},
{
// 自定义任务2:cmake config
"label": "cmake",
"group": "build",
"type": "shell",
"command": "cmake",
"args": [
"-DCMAKE_BUILD_TYPE=${input:CMAKE_BUILD_TYPE}",
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON",
".."
],
"options": {
"cwd": "${workspaceFolder}/build",
},
"windows": {
"args": [
"-DCMAKE_BUILD_TYPE=${input:CMAKE_BUILD_TYPE}",
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON",
"..",
"-G",
"\"NMake Makefiles\""
],
"options": {
"shell": {
"executable": "D:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvarsall.bat",
"args": [
"${input:PLATFORM}",
"-vcvars_ver=${input:vcvars_ver}",
"&&"
]
}
},
},
"dependsOn": [
"mkbuild"
]
},
{
// 自定义任务3:在build目录执行编译
"label": "build",
"group": "build",
"type": "shell",
"command": "cmake",
"args": [
"--build",
"./",
"--target",
"all",
"--"
],
"options": {
"cwd": "${workspaceFolder}/build",
},
"problemMatcher": "$gcc",
"windows": {
"options": {
"shell": {
"executable": "D:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvarsall.bat",
"args": [
"${input:PLATFORM}",
"-vcvars_ver=${input:vcvars_ver}",
"&&"
]
}
},
"problemMatcher": "$msCompile"
},
"dependsOn": [
"cmake"
]
},
{
// 自定义任务4:运行程序
"label": "run",
"type": "shell",
"command": "./${workspaceFolderBasename}",
"group": "build",
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared",
"showReuseMessage": true,
"clear": true
},
"options": {
"cwd": "${workspaceFolder}/build"
},
"problemMatcher": "$gcc",
"windows":{
"options": {
"cwd": "${workspaceFolder}/build"
},
// Use the standard MS compiler pattern to detect errors, warnings and infos
"problemMatcher": "$msCompile"
},
"dependsOn":["build"]
}
],
// 输入参数
"inputs": [
{
"id": "CMAKE_BUILD_TYPE",
"type": "pickString",
"description": "What CMAKE_BUILD_TYPE do you want to create?",
"options": [
"Debug",
"Release",
"RelWithDebInfo",
"MinSizeRel",
],
"default": "Debug"
},
{
"id": "PLATFORM",
"type": "pickString",
"description": "What PLATFORM do you want to create?",
"options": [
"x86",
"amd64",
"arm",
"x86_arm",
"x86_amd64",
"amd64_x86",
"amd64_arm",
],
"default": "amd64"
},
{
"id": "vcvars_ver",
"type": "pickString",
"description": "What vcvars_ver do you want to create?",
"options": [
"14.2", // vs2019
"14.1", // vs2017
"14.0", // vs2015
],
"default": "14.2"
}
]
}

vscode cmake工程launch和task文件设置的更多相关文章

  1. vscode, cmake编译多个C++文件

    目的是利用vscode及相关插件编译多个C++文件. 我已经装好cmake和mingw并且将它们的路径添加到系统变量path中了. vscode装上如下几个插件: 点击vscode左上角   文件-& ...

  2. centos 7 vscode cmake 编译c++工程

    一.环境说明 1)gcc/g++  cmake安装建议 gcc/g++内核自带的即可,如果需要新的自行安装, cmake也一样,如有需要新的版本自行安装. 2)vscode安装插件 必要的插件c/c+ ...

  3. win10下VSCode+CMake+Clang+GCC环境搭建

    win10下VSCode+CMake+Clang+GCC环境搭建 win10下VSCode+CMake+Clang+GCC环境搭建 安装软件 VSCode插件安装 新建文件夹, 开始撸代码 main. ...

  4. ubuntu+VS code+launch.json+task.json

    1.ubuntu->vs code . 通过官方PPA安装Ubuntu make sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make s ...

  5. windows10下vscode+cmake编译Qt5代码

    概述 本文演示环境: windows10 cmake version:3.18 qt version: 5.14 vscode version: 1.54.1 本文演示环境基于在线模式, 离线使用VS ...

  6. windows10使用vscode+cmake编译c++代码

    概述 本文将介绍 VScode + cmake 在 windows10上编译c++代码 前提: 我之前已经安装过VS2017, 故 编译将采用cl.exe. 开始之前 本文演示环境基于 windows ...

  7. 容器加載Web工程的Web.xml文件介紹

    转 容器加載Web工程的Web.xml文件介紹 [-] 这篇文章主要是综合网上关于webxml的一些介绍希望对大家有所帮助也欢迎大家一起讨论 ---题记 一            Webxml详解 一 ...

  8. Cmake知识----编写CMakeLists.txt文件编译C/C++程序

    1.CMake编译原理 CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多.CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt ...

  9. Cmake知识----编写CMakeLists.txt文件编译C/C++程序(转)

    1.CMake编译原理 CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多.CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt ...

  10. eclipse中关联文件设置方法

    在前几次的试验中,只是做了处于应用程序最上层的界面设计,其实还不知程序在运行过程中到底调用了哪些函数,这些函数是怎么实现的,由于搭建环境时没有进行文件关联,所以在环境中无法实现ctrl键+左击鼠标的方 ...

随机推荐

  1. 实用!7个强大的Python机器学习库!⛵

    作者:韩信子@ShowMeAI 机器学习实战系列:https://www.showmeai.tech/tutorials/41 本文地址:https://www.showmeai.tech/artic ...

  2. S2-013 CVE-2013-1966

    漏洞名称 S2-013 CVE-2013-1966 远程命令执行 利用条件 Struts 2.0.0 - Struts 2.3.14.1 漏洞原理 Struts2 标签中 <s:a> 和 ...

  3. wkhtmltopdf 目录对象使用 及 目录样式分享

    最近又是更新了报告模板的样式新使用了目录对象 因为直接生成的目录样式比较丑所以这边使用的是自定义xsl 直接生成的目录样式 自定义样式 因为需求所以写了些特殊判断 <xsl:if test=&q ...

  4. 03-Verilog语法

    Verilog语法 1 Register 组合逻辑-->寄存器-->组合逻辑-->寄存器 Register是一个变量,用于存储值,并不代表一个真正的硬件DFF. reg A,C; / ...

  5. Gvim基础操作-01

    Gvim基础操作 进行代码或者是文本.脚本都要使用到文本编辑工具. vi是visual的缩写,其意为可视化.它是Unix系统文本编辑的标准工具.利用光标在屏幕上的移动,用户可以方便的建立.修改或者插入 ...

  6. 【Dubbo3 终极特性】「云原生三中心架构」带你探索 Dubbo3 体系下的配置中心和元数据中心、注册中心的原理及开发实战(中)

    承接上文 通过之前的[Dubbo3终极特性]「云原生三中心架构」带你探索 Dubbo3 体系下的配置中心和元数据中心.注册中心的原理及开发实战(上),让我们对Dubbo3的三中心架构体系有了一定的认识 ...

  7. Python 内置界面开发框架 Tkinter入门篇

    本文大概 4158 个字,阅读需花 10 分钟 内容不多,但也花了一些精力 如要交流,欢迎关注我然后评论区留言 谢谢你的点赞收藏分享 首先,今天先给大家拜个好年!新年快乐,恭喜发财!为了感谢大家对我的 ...

  8. 【实战】yolov8 tensorrt模型加速部署

    [实战]yolov8 tensorrt模型加速部署 TensorRT-Alpha基于tensorrt+cuda c++实现模型end2end的gpu加速,支持win10.linux,在2023年已经更 ...

  9. js节流防抖 减少服务器请求

  10. web应用开发模式、API接口、接口测试工具postman

    web应用开发模式.API接口.接口测试工具postman web开发模式 前后端混合开发模式 前后端混合开发模式是指前后端代码混合,所有的HTML代码和数据在服务器端拼接好,一次性将内容发送到客户端 ...