mac上用cursor/vscode调试root权限进程

对于root权限进程,保底可以用xcode来调试,当然前提是这个进程是debug版的,release版的进程调试不在本文覆盖范围内

xcode易用性远不如vscode/cursor,能在cursor里断点调试那就更方便了

普通进程cursor里直接launch或attach一下就可以直接调试,root权限的进程用curosr直接attach会报错,这时候就可以使用lldb的远程调试来处理了

本质上就是参考下面这篇官方文档

https://lldb.llvm.org/use/remote.html#remote-system

首先在mac上安装lldb

复制代码
brew install lldb

然后把debugserver软链接到lldb-server同一目录下

复制代码
ln -s /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Resources/debugserver /opt/homebrew/opt/llvm/bin/debugserver

然后以sudo权限运行lldb-server

复制代码
sudo /opt/homebrew/opt/llvm/bin/lldb-server platform --listen "*:1234" --server  

剩下在cursor里配一下launch.json设定就可以了,

复制代码
[ 
    {
      "name": "attach lldb",
      "type": "lldb",
      "request": "attach",
      "pid": "${command:pickProcess}",
      "sourceMap": {}
    },
    {
      "name": "attach root process remote lldb port",
      "type": "lldb",
      "request": "attach",
      "pid": "${command:pickProcess}",
      "initCommands": [
        "platform select remote-macosx",
        "platform connect connect://localhost:1234"
      ],
      "sourceMap": {}
    },
    {
      "name": "launch mac program",
      "type": "lldb",
      "request": "launch",
      "program": "${workspaceFolder}/bin/mac/Debug/myApp",
      "args": [      ],
      "cwd": "${workspaceFolder}/bin/mac/Debug/",
      "sourceMap": {}
    }

]

这样就可以很方便的在cursor里attach或launch应用来调试了,而且root权限的进程也同样可以调试,是不是要方便很多

相关推荐
晴天的雨.992几秒前
类和对象下(内部类,匿名对象,对象拷贝时的编译器优化)
开发语言·c++·算法
山外有山a14 分钟前
【实战】M系列芯片Mac本地部署Qwen2.5:Ollama + Open WebUI 全流程与3个关键优化参数
macos
旖旎夜光20 分钟前
LeetCode 238:除自身以外数组的乘积(前缀和) —— 题解
数据结构·c++·算法·leetcode·前缀和
Escalating_xu30 分钟前
【C++类和对象(上)】从类的定义、封装与对象模型到内存对齐和 this 指针
开发语言·前端·c++
吃着火锅x唱着歌34 分钟前
Effective C++ 学习笔记 条款45 运用成员函数模板接受所有兼容类型
c++·笔记·学习
爱和冰阔落1 小时前
【Linux】多线程打印为什么会乱?pthread 创建、等待、退出、取消与分离全实战
linux·运维·c++·redis
luj_17681 小时前
尾椎藏今生记忆?骨盆对应不确定性
开发语言·网络·c++·经验分享·算法
断点之下1 小时前
C++类和对象:六个默认成员函数详解
开发语言·c++
wabil1 小时前
[AI-Talk] codx制作xmind文件技巧
ide·ai编程·myeclipse·xmind
库玛西3 小时前
深入浅出传输层:UDP 与 TCP 协议全景指南
linux·服务器·网络·c++·笔记·tcp/ip·udp