首页 > 其他分享 >0185-在 VSCode 中远程调试

0185-在 VSCode 中远程调试

时间:2024-07-15 09:20:10浏览次数:4  
标签:0185 VSCode mos gdb QEMU 远程 调试

环境

  • Time 2022-11-13
  • WSL-Ubuntu 22.04
  • QEMU 6.2.0
  • Rust 1.67.0-nightly
  • VSCode 1.73.1

前言

说明

参考:https://os.phil-opp.com/minimal-rust-kernel

目标

将上一节编写的可执行文件制作成 QEMU 可以启动的镜像。使用 QEMU 启动后,使用 VSCode 远程调试。

启动 QEMU 脚本

#! /usr/bin/bash

cargo bootimage
qemu-system-x86_64 -drive format=raw,file=target/mos/debug/bootimage-mos.bin \
    -display curses -s -S

VSCode 调试配置

{
    "configurations": [
        {
            "name": "mos",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/target/mos/debug/mos",
            "MIMode": "gdb",
            "miDebuggerPath": "rust-gdb",
            "miDebuggerServerAddress": "localhost:1234",
            "cwd": ".",
            "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
                }
            ]
        }
    ]
}

效果

VSCode调试

总结

使用 Rust 编写了一个在 x64 平台上的独立可执行程序,使用 VSCode 远程调试它。

附录

标签:0185,VSCode,mos,gdb,QEMU,远程,调试
From: https://www.cnblogs.com/jiangbo4444/p/18302443

相关文章

  • Python Scrapy爬虫、调试Scrapy程序、爬取的数据保存到数据库
    前言从0配置Scrapy爬虫程序,并记录如何调试脚本,保存数据到数据库。这里我们以Scrapy推荐的官方练习项目为例进行实战演练配置1初始环境安装Anaconda,Anaconda是一个软件包管理和环境管理系统。安装PyCharm,Python编辑器2创建Scrapy项目并运行打开AnacondaPrompt......
  • VsCode 使用 Tips
    来自......
  • vscode操作笔记
    ctrlshifp打开命令窗口 修改vscode左边搜索框或者文件名字显示的字体的方法(设置里面不包含,只有自己改css文件)找到workbench.desktop.main.css文件,修改以下属性.monaco-workbench.part>.content{font-size:14px;font-family:'YouYuan'} 我使用的插件有ms-vscode.cppto......
  • 自用VsCode配置文件
    {"name":"karle","settings":"{\"settings\":\"{\\r\\n\\t\\\"liveServer.settings.CustomBrowser\\\":\\\"chrome\\\",\\r\\n\\t\\\"liveServer.settings.donot......
  • 国产渲染引擎ssRender(Lua+LuaPanda调试篇)
        秉承着说多了都是故事的理念,直接上干货。    今天给大家带来的是一篇关于Lua+Vscode+LuaPanda的远程调试篇,或许对你有一些启发。    资源给大家放在链接里:LuaPanda+LuaSocketDebug资源文件http://[email protected]:hwYang1995/ssRender_Lua_Debug_......
  • 0173-GDB 调试汇编程序
    环境Time2022-11-12WSL-Ubuntu22.04QEMU6.2.0NASM2.15.05前言说明参考:https://os.phil-opp.com/multiboot-kernel/参考:https://ncona.com/2019/12/debugging-assembly-with-gdb/目标编写一个简单的汇编程序,使用GDB进行调试。汇编程序section.textglobal......
  • 0175-GDB 调试 multiboot 启动
    环境Time2022-11-12WSL-Ubuntu22.04QEMU6.2.0NASM2.15.05前言说明参考:https://os.phil-opp.com/multiboot-kernel/目标使用编写好的内核可执行文件,直接从QEMU启动,启动时暂停CPU,使用GDB调试。汇编代码section.multiboot_headerheader_start:dd0x1BAD......
  • 解决vscode项目中无法识别宏定义的问题
    在c_cpp_properties.json中的"defines":[]中定义的宏无法被识别。从而导致代码中的宏开关无法生效,造成代码的阅读不便利。排查路线是:关闭所有插件,删除当前工程目录下的.vscode文件夹。经过一系列排查发现是C/C++插件与clangd插件有冲突,解决方法很简单,卸载clangd插件,然后重......
  • 在VSCODE中创建C语言环境,编译、运行、调试。
    1、安装MinGWMinGW-w64-for32and64bitWindowsdownload|SourceForge.net下载下来是一个压缩包对压缩包解压得到文件夹mingw64将文件夹mingw64剪切到C:\ProgramFiles目录下配置环境变量点击系统变量里面的Path将C:\ProgramFiles\mingw64\bin目录添加......
  • 04OLED简介和调试方法
    OLED简介和调试方法调试方式串口调试显示屏调试其他调试方法总结:OLED简介硬件电路OLED驱动函数keil调试模式进入方法keil调试界面窗口简单功能说明更加强大的功能调试方式电脑想看什么变量可以直接打印到屏幕,但是单片机很多时候由于成本和电路结构的限制,就不会有......