You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下用VS Code编写C代码时终端出现奇怪消息求助

解决VS Code运行C代码后出现gdb进程完成消息的问题

问题原因

这条消息是C/C扩展的调试引擎(MIEngine)启动的gdb调试进程正常退出的日志。每次运行都出现,是因为你同时启用了CodeRunner插件的运行功能和**C/C扩展的调试关联逻辑**,导致调试进程被触发后快速结束,从而输出该完成信息。

解决方法

  • 调整CodeRunner配置,断开调试关联
    打开VS Code设置(快捷键Ctrl+,),搜索Code-runner: Run In Terminal并勾选;再搜索Code-runner: Enable Debugger,取消勾选该选项。这样CodeRunner只会单纯编译运行代码,不会触发gdb调试进程。

  • 修改tasks.json,配置纯编译运行任务
    若习惯用C/C++扩展的任务运行而非CodeRunner,可创建或修改.vscode/tasks.json文件,配置仅编译运行的任务,避免触发调试流程:

    {
        "version": "2.0.0",
        "tasks": [
            {
                "label": "Compile and Run C",
                "type": "shell",
                "command": "gcc ${file} -o ${fileDirname}/${fileBasenameNoExtension} && ${fileDirname}/${fileBasenameNoExtension}",
                "args": [],
                "group": {
                    "kind": "build",
                    "isDefault": true
                },
                "problemMatcher": ["$gcc"],
                "presentation": {
                    "echo": true,
                    "reveal": "always",
                    "focus": false,
                    "panel": "shared",
                    "showReuseMessage": true,
                    "clear": false
                }
            }
        ]
    }
    

    之后按Ctrl+Shift+B运行该任务,仅执行编译和运行,不会启动gdb。

  • 禁用其中一个插件的运行功能
    若主要使用CodeRunner,关闭C/C扩展的自动调试触发;反之则禁用CodeRunner,只用C/C扩展的任务和调试配置,避免两者功能冲突。

额外说明

之前的stdio.h缺失问题,安装libc6-dev是正确操作,该包包含C标准库头文件与编译所需链接库,已解决编译依赖问题。

内容的提问来源于stack exchange,提问作者Elliot Scaramal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 00:54:53