Home | History | Annotate | Line # | Download | only in libbacktrace
README revision 1.1.1.1.2.1
      1          1.1  christos The libbacktrace library
      2  1.1.1.1.2.1  perseant 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.1.2.1  perseant used to produce symbolic backtraces.
      6  1.1.1.1.2.1  perseant Sample uses would be to print a detailed backtrace when an error
      7  1.1.1.1.2.1  perseant occurs or to gather detailed profiling information.
      8  1.1.1.1.2.1  perseant In general the functions provided by this library are async-signal-safe,
      9  1.1.1.1.2.1  perseant meaning that they may be safely called from a signal handler.
     10          1.1  christos 
     11  1.1.1.1.2.1  perseant The libbacktrace library is provided under a BSD license.
     12  1.1.1.1.2.1  perseant 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.1.2.1  perseant will work.
     20  1.1.1.1.2.1  perseant See the source file backtrace-supported.h.in for the macros that it
     21  1.1.1.1.2.1  perseant defines.
     22          1.1  christos 
     23  1.1.1.1.2.1  perseant As of October 2020, libbacktrace supports ELF, PE/COFF, Mach-O, and
     24  1.1.1.1.2.1  perseant XCOFF executables with DWARF debugging information.
     25  1.1.1.1.2.1  perseant In other words, it supports GNU/Linux, *BSD, macOS, Windows, and AIX.
     26  1.1.1.1.2.1  perseant The library is written to make it straightforward to add support for
     27  1.1.1.1.2.1  perseant other object file and debugging formats.
     28  1.1.1.1.2.1  perseant 
     29  1.1.1.1.2.1  perseant The library relies on the C++ unwind API defined at
     30  1.1.1.1.2.1  perseant https://itanium-cxx-abi.github.io/cxx-abi/abi-eh.html
     31  1.1.1.1.2.1  perseant This API is provided by GCC and clang.
     32