Vscode根据Makefile文件使用make编译程序配置文件launch.json,task.json

视频介绍:

VsCode使用make编译程序配置_哔哩哔哩_bilibili

task.json: 2024年4.20

ctrl shift b 编译

复制代码
{
    "version": "2.0.0",
    "tasks": [
      {
        "label": "build_suricata",
        "type": "shell",
        "command": "make && sudo make install",  //suricata编译
        "problemMatcher": [
            "$gcc"

        ],
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "presentation": {
            "echo": true,
            "reveal": "always",
            "focus": false,
            "panel": "dedicated",
            "showReuseMessage": false,
            "clear": true
        }
      },


      {
        "type": "shell",  //或者是process 区别找文档
        "label": "C/C++: g++ build active file", //任务标签
        "command": "/usr/bin/g++",
        "args": [
            "-g",
            "-Wall",
            "-std=c++17",
            "${fileDirname}/*.cpp",
            "-o",
            "${fileDirname}/${fileBasenameNoExtension}"
        ],
        "detail": "compiler: /usr/bin/g++",
        "group": {
            "kind": "build",
            "isDefault": true
        },
        "presentation": {
            "echo": true,
            "reveal": "always", //是否将集成终端面板置于前面
            "focus": true, //是否获得焦点
            "panel": "dedicated",
            "showReuseMessage": false, //控制是否显示"终端将被任务重用,按任意键关闭它"消息
            "clear": true // 运行前清除终端
        },
        "problemMatcher": [
            "$gcc"
        ]
      },
      
        
    ],
    "options": {
        "shell": {
            "executable": "/bin/bash",
            "args": [
                "-c"
            ]
        },
        "env": {
            "PATH": "/usr/bin:${env:PATH}"
        }
    }
}


//官方文档:https://code.visualstudio.com/docs/editor/tasks

launch.json: 2024年 4.20

复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "cppdbg",
            "request": "launch",
            "name": "DeBug_suricata",
            // "program": "${workspaceFolder}/src/suricata",
            "program": "/usr/local/bin/suricata",
            "args": [
                "-i",
                "ens33",
                "-c",
                "/etc/suricata/suricata.yaml",
                "-v",
                "--runmode",
                "single",
                "-l",
                "/home/daxian/Desktop/zs/suricata-log-dir/"

            ],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "/usr/bin/gdb",
            // "preLaunchTask": "build_suricata"
        },





        
        {
            "name": "g++ - Build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "/usr/bin/gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "C/C++: g++ build active file"
        },
       
       
    ]
}
相关推荐
都小事儿1 小时前
VSCODE:保存文件时删除行尾空格
linux·vscode
天外飞雨道沧桑12 小时前
前端开发 Cursor MCP 提效工具配置
前端·vscode·ai编程·开发工具·cursor
倦王13 小时前
vscode 中如何去选择不同的远程环境去debug
ide·vscode·编辑器
zhaqonianzhu1 天前
【保姆级】无外网 Linux 服务器用 VSCode 通义灵码:SSH 代理配置全流程
linux·服务器·vscode
Java开发追求者2 天前
vscode导入springboot项目
java·ide·spring boot·vscode
葡萄城技术团队2 天前
Web 无障碍工程化实战:VSCode 扩展 + AI 自动修复全解析
前端·vscode·产品运营
指尖的爷2 天前
VsCode远程开发SSH连接失败
ide·vscode·ssh
不染尘.2 天前
C++中的易混点2
开发语言·数据结构·c++·vscode·算法
shayudiandian2 天前
用VSCode打造AI开发环境
人工智能·vscode
q***71852 天前
【golang学习之旅】使用VScode安装配置Go开发环境
vscode·学习·golang