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