mac下vscode调试c的环境配置

简介: mac下vscode调试c的环境配置

mac下vscode调试c的环境配置

想在vscode上调试c代码,找了一圈配置,发现都是c++的教程。这里给出一篇可行的配置c的教程,希望对大家有帮助。

基本的环境,比如xcode、vscode的安装,这里就不提了,默认你是可以在vscode中可以运行c代码的。

主要是两步,第一步安装对应的插件,第二步配置对应的launch.jsontask.json

1、安装对应的插件

下图红框圈住的插件都需要安装:
在这里插入图片描述

最关键的是CodeLLDB,解决了Catalina对系统lldb的不兼容问题。

2、配置launch.json和task.json

生成launch.json文件:

工具类点击"运行" --> 添加配置 --> LLDB,此时项目的根目录下会生成.vscode目录,目录下会有launch.json文件生成。

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "lldb",
            "request": "launch",
            "name": "Debug",
            "program": "${workspaceFolder}/<your program>",
            "args": [],
            "cwd": "${workspaceFolder}"
        }
    ]
}

不过这个需要做一下修改,修改后的launch.json文件如下:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "gcc - 生成和调试活动文件",
            "type": "lldb",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}", // 重点
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "lldb",
            "preLaunchTask": "C/C++: gcc 生成活动文件"
        }
    ]
}

生成tasks.json文件

shift + command + p --> Tasks:Configure Tasks --> Create tasks.json form templates --> Others,操作完之后.vscode目录下会自动生成tasks.json文件,如下:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "echo",
            "type": "shell",
            "command": "echo Hello"
        }
    ]
}

我们需要对其做一些小改动:关键是args中添加的参数,其实就是运行是gcc相关的参数。

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Build with Clang",
            "type": "shell",
            "command": "gcc",
            "args": [
                //"test.cpp", // 这里是官方写法,不具有普遍性,注意两个配置文件的统一性即可
                "${fileDirname}/${fileBasename}",
                "-o",
                //"test.out",
                "${fileDirname}/${fileBasenameNoExtension}",
                "--debug"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

3、运行

在vscode中打开要运行的c文件,然后在工具类"运行",接着就会在断点处hold住,具体如下图:
在这里插入图片描述
接着你就可以进行调试了,如何调试我就不再赘述了。

参考

Debug C++ in Visual Studio Code
Mac使用vscode调试c/c++
Mac Catalina VSCode C++ 调试配置

相关文章
|
4月前
|
iOS开发 MacOS
【Mac系统】解决Vscode中LeetCode插件不能刷剑指offer题库
文章讨论了解决Mac系统中Vscode里LeetCode插件无法刷剑指Offer题库的问题,并提供了一些相关的使用技巧和资源链接。
247 1
|
2月前
|
机器人
给 Mac 添加右键菜单「使用 VSCode 打开」
如何在 Mac 下右键文件或文件夹,直接通过菜单项「用 VSCode 打开」。
64 2
|
3月前
|
开发框架 .NET C#
VSCode开发.net项目时调试无效
【9月更文挑战第22天】在使用 VSCode 开发 .NET 项目时遇到调试问题,可从项目配置、调试配置、调试器安装、运行环境、日志和错误信息等方面排查。确认项目类型及文件配置,检查 `launch.json` 文件及配置项,确保调试器扩展已安装并启用,验证 .NET 运行时版本和环境变量,查看 VSCode 输出窗口和项目日志文件,检查权限及代码错误。若问题仍未解决,可查阅官方文档或社区论坛。
|
3月前
|
Web App开发 iOS开发 开发者
Mac——基于Similator和Safari调试移动端页面
最近在开发移动端,需要在iphone环境下做一些调试,查看下是否有问题,但是手头上没有真机,不过当前主力本换成了`Mac`,所以就可以先用`Simulator`来调试下。
91 8
|
4月前
vscode——如何开启Edge进行调试
vscode——如何开启Edge进行调试
77 4
vscode——如何开启Edge进行调试
|
4月前
|
JavaScript
vscode——如何调试typescript
vscode——如何调试typescript
79 4
|
4月前
|
TensorFlow 算法框架/工具 Python
【Mac 系统】解决VSCode用Conda成功安装TensorFlow但程序报错显示红色波浪线Unable to import ‘tensorflow‘ pylint(import-error)
本文解决在Mac系统上使用VSCode时遇到的TensorFlow无法导入问题,原因是Python解析器未正确设置为Conda环境下的版本。通过在VSCode左下角选择正确的Python解析器,即可解决import TensorFlow时报错和显示红色波浪线的问题。
161 9
|
4月前
|
JavaScript 前端开发 C++
【Azure Function】调试 VS Code Javascript Function本地不能运行,报错 Value cannot be null. (Parameter 'provider')问题
【Azure Function】调试 VS Code Javascript Function本地不能运行,报错 Value cannot be null. (Parameter 'provider')问题
|
6月前
|
JavaScript 前端开发 C++
vscode编辑器中如何调试nextjs代码
代码可调式的重要性不言而喻。 对于Programer来说,自己编写的程序能够被优雅调试是一件幸福的事情,特别是习惯了后端程序调试的开发者... 在折腾Nextjs项目的日子里,我走了很多弯路才弄明白在vs code中如何优雅的调试代码。
301 1
vscode编辑器中如何调试nextjs代码
|
4月前
|
JavaScript Linux iOS开发
【Mac系统】Vscode使用LeetCode插件报错‘leetcode.toggleLeetCodeCn‘ not found
在Mac系统下使用VSCode的LeetCode插件时遇到“leetcode.toggleleetcodecn”命令找不到的错误解决方法,主要是通过从Nodejs官网下载并安装最新版本的Node.js来解决环境配置问题。
233 0