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 小时前
VS2022安装与第一个C程序编写教程
c++·vscode
加成BUFF4 小时前
基于DeepSeek+Python开发软件并打包为exe(VSCode+Anaconda Prompt实操)
vscode·python·prompt·conda·anaconda
SiYuanFeng6 小时前
vscode中markdown使用单个$显示公式($...$),preview页面里公式显示失败
ide·vscode·编辑器
御坂10101号7 小时前
Total Recall:让 Claude 学会忘记,优化记忆管理
经验分享·vscode·开源·软件工程·ai编程
嵌入小生0079 小时前
线程 --- 嵌入式(Linux)
linux·vscode·vim·嵌入式·线程·进程
coderYYY21 小时前
VSCode终端启动报错
前端·ide·vscode·npm·编辑器
qinaoaini1 天前
[golang][MAC]Go环境搭建+VsCode配置
vscode·macos·golang
风静如云2 天前
VSCode:避免打开新文件时会在标签页覆盖旧文件
vscode
春日见2 天前
如何查看我一共commit了多少个,是哪几个,如何回退到某一个版本
vscode·算法·docker·容器·自动驾驶
西柚云2 天前
告别命令行!在VSCode中直接使用Claude Code编程
服务器·ide·vscode·编辑器·claude