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