Update README
This commit is contained in:
parent
f21874cbf7
commit
f4cf8c198b
21
README.md
21
README.md
@ -560,12 +560,21 @@ To static link the library set `-DCPPTRACE_STATIC=On`.
|
||||
|
||||
## Library Internals
|
||||
|
||||
Cpptrace supports a number of back-ends and middle-ends to produce stack traces. Stack traces are produced in roughly
|
||||
three steps: Unwinding, symbol resolution, and demangling. Cpptrace by default on linux / macos will generate traces
|
||||
with `_Unwind_Backtrace`, libdwarf, and `__cxa_demangle`. On windows traces are generated by default with `StackWalk64`
|
||||
and dbghelp.h (no demangling is needed with dbghelp). Under mingw libdwarf and dbghelp.h are used, along with
|
||||
`__cxa_demangle`. Support for these is the main focus of cpptrace and they should work well. If you want to use a
|
||||
different back-end such as addr2line, however, you can configure the library to do so.
|
||||
Cpptrace supports a number of back-ends to produce stack traces. Stack traces are produced in roughly three steps:
|
||||
Unwinding, symbol resolution, and demangling.
|
||||
|
||||
The library's CMake automatically configures itself for what your system supports. The ideal configuration is as
|
||||
follows:
|
||||
|
||||
| Platform | Unwinding | Symbols | Demangling |
|
||||
| -------- | ------------- | ------------------ | -------------------- |
|
||||
| Linux | `_Unwind` | libdwarf | cxxabi.h |
|
||||
| MacOS | `_Unwind` | libdwarf | cxxabi.h |
|
||||
| Windows | `StackWalk64` | dbghelp | No demangling needed |
|
||||
| MinGW | `StackWalk64` | libdwarf + dbghelp | cxxabi.h |
|
||||
|
||||
Support for these back-ends is the main development focus and they should work well. If you want to use a different
|
||||
back-end such as addr2line, for example, you can configure the library to do so.
|
||||
|
||||
**Unwinding**
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user