2019-01-31 02:51:40 +08:00
|
|
|
Status
|
|
|
|
======
|
|
|
|
|
|
|
|
macOS
|
|
|
|
-----
|
|
|
|
|
|
|
|
LLDB has matured a lot in the last year and can be used for C, C++ and
|
|
|
|
Objective-C development for x86_64, i386 and ARM debugging. The entire public
|
2019-05-15 00:37:43 +08:00
|
|
|
API is exposed though a framework on macOS which is used by Xcode, the lldb
|
2019-01-31 02:51:40 +08:00
|
|
|
command line tool, and can also be used by Python. The entire public API is
|
|
|
|
exposed through script bridging which allows LLDB to use an embedded Python
|
|
|
|
script interpreter, as well as having a Python module named "lldb" which can be
|
|
|
|
used from Python on the command line. This allows debug sessions to be
|
|
|
|
scripted. It also allows powerful debugging actions to be created and attached
|
|
|
|
to a variety of debugging workflows.
|
|
|
|
|
|
|
|
Linux
|
|
|
|
-----
|
|
|
|
|
|
|
|
LLDB is improving on Linux. While the debugserver has not been ported (to
|
|
|
|
enable remote debugging) Linux is nearing feature completeness with Darwin to
|
|
|
|
debug x86_64 programs, and is partially working with i386 programs. ARM
|
|
|
|
architectures on Linux are untested. For more details, see the Features by OS
|
|
|
|
section below.
|
|
|
|
|
|
|
|
FreeBSD
|
|
|
|
-------
|
|
|
|
|
|
|
|
LLDB on FreeBSD lags behind the Linux implementation but is improving rapidly.
|
|
|
|
For more details, see the Features by OS section below.
|
|
|
|
|
|
|
|
Windows
|
|
|
|
-------
|
|
|
|
|
|
|
|
LLDB on Windows is still under development, but already useful for i386
|
|
|
|
programs (x86_64 untested) built with DWARF debug information, including
|
|
|
|
postmortem analysis of minidumps. For more details, see the Features by OS
|
|
|
|
section below.
|
|
|
|
|
|
|
|
Features Matrix
|
|
|
|
---------------
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
2019-05-15 00:37:43 +08:00
|
|
|
| Feature | FreeBSD | Linux | macOS (i386/x86_64 and ARM/Thumb) | Windows (i386) |
|
2019-01-31 02:51:40 +08:00
|
|
|
| | (x86_64) | (x86_64 and PPC64le) | | |
|
|
|
|
+================================+============+=========================+======================================+======================+
|
|
|
|
| Backtracing | OK | OK | OK | OK |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| Breakpoints | OK | OK | OK | OK |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| C++11: | OK | OK | OK | Unknown |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| Commandline lldb tool | OK | OK | OK | OK |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| Core file debugging | OK (ELF) | OK (ELF) | OK (MachO) | OK (Minidump) |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| Debugserver (remote debugging) | Not ported | Not ported | OK | Not ported |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| Disassembly | OK | OK | OK | OK |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| Expression evaluation | Unknown | Works with some bugs | OK | Works with some bugs |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| JIT debugging | Unknown | Symbolic debugging only | Untested | No |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|
|
|
|
| Objective-C 2.0: | Unknown | Not applicable | OK | Not applicable |
|
|
|
|
+--------------------------------+------------+-------------------------+--------------------------------------+----------------------+
|