GDB、LLDB、Clang

本文介绍了LLDB调试器的强大功能,对比了与GDB的区别,特别提到了LLDB与Clang的关系,后者是Apple的C++编译器,用于替换GCC。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、GDB和LLDB

GDB和LLDB都是调试器,其中LLDB比GDB的功能更加强大。在Mac上使用的是LLDB。

GDB:
UNIX及UNIX-like下的调试工具,是GNU项目的调试器部分,旨在与GNU编译器一起工作。

LLDB:
LLDB是个开源的内置于XCode的具有REPL(read-eval-print-loop)特征的Debugger,其可以安装C++或者Python插件,是LLVM项目的调试器部分,其创建是为了与LLVM编译器一起使用。

二者命令对照表:https://lldb.llvm.org/use/map.html

使用建议:在使用clang时使用LLDB,在与gcc配对使用时使用gdb,因为lldb基于llvm,而gdb是GNU调试器。

2、Clang

Clang是一个C、C++、Objective-C和Objective-C++编程语言的编译器前端。它采用了LLVM作为其后端,由LLVM2.6开始,一起发布新版本。它的目标是提供一个GNU编译器套装(GCC)的替代品,支持了GNU编译器大多数的编译设置以及非官方语言的扩展。
这个项目是有苹果公司发起的,是LLVM编译器的工具集的前端,目的是输出代码对应的抽象语法树,并将代码编译成LLVM Bitecode。具体可以看wiki

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值