README revision 1.1.1.2 1 1.1 mrg The libbacktrace library
2 1.1.1.2 mrg Initially written by Ian Lance Taylor <iant (a] golang.org>
3 1.1 mrg
4 1.1 mrg The libbacktrace library may be linked into a program or library and
5 1.1.1.2 mrg used to produce symbolic backtraces.
6 1.1.1.2 mrg Sample uses would be to print a detailed backtrace when an error
7 1.1.1.2 mrg occurs or to gather detailed profiling information.
8 1.1.1.2 mrg In general the functions provided by this library are async-signal-safe,
9 1.1.1.2 mrg meaning that they may be safely called from a signal handler.
10 1.1 mrg
11 1.1.1.2 mrg The libbacktrace library is provided under a BSD license.
12 1.1.1.2 mrg See the source files for the exact license text.
13 1.1 mrg
14 1.1 mrg The public functions are declared and documented in the header file
15 1.1 mrg backtrace.h, which should be #include'd by a user of the library.
16 1.1 mrg
17 1.1 mrg Building libbacktrace will generate a file backtrace-supported.h,
18 1.1 mrg which a user of the library may use to determine whether backtraces
19 1.1.1.2 mrg will work.
20 1.1.1.2 mrg See the source file backtrace-supported.h.in for the macros that it
21 1.1.1.2 mrg defines.
22 1.1 mrg
23 1.1.1.2 mrg As of October 2020, libbacktrace supports ELF, PE/COFF, Mach-O, and
24 1.1.1.2 mrg XCOFF executables with DWARF debugging information.
25 1.1.1.2 mrg In other words, it supports GNU/Linux, *BSD, macOS, Windows, and AIX.
26 1.1.1.2 mrg The library is written to make it straightforward to add support for
27 1.1.1.2 mrg other object file and debugging formats.
28 1.1.1.2 mrg
29 1.1.1.2 mrg The library relies on the C++ unwind API defined at
30 1.1.1.2 mrg https://itanium-cxx-abi.github.io/cxx-abi/abi-eh.html
31 1.1.1.2 mrg This API is provided by GCC and clang.
32