5 releases

0.1.0-rc.2 Nov 5, 2024
0.1.0-rc.1 Sep 5, 2024
0.1.0-rc.0 Jun 10, 2024
0.1.0-alpha.1 Feb 23, 2024
0.0.0 Nov 21, 2023

#669 in Debugging

Download history 2/week @ 2024-08-15 14/week @ 2024-08-22 1230/week @ 2024-08-29 3371/week @ 2024-09-05 3725/week @ 2024-09-12 2378/week @ 2024-09-19 2356/week @ 2024-09-26 1367/week @ 2024-10-03 1787/week @ 2024-10-10 1333/week @ 2024-10-17 2486/week @ 2024-10-24 3347/week @ 2024-10-31 3081/week @ 2024-11-07 1845/week @ 2024-11-14 2729/week @ 2024-11-21 3184/week @ 2024-11-28

11,839 downloads per month

BSD-3-Clause

1MB
18K SLoC

pipeline crates.io rustc

blazesym-c

blazesym-c provides C language bindings for the blazesym library.

Build & Use

blazesym-c requires a standard Rust toolchain and can be built using the Cargo project manager (e.g., cargo build).

The build will produce libblazesym_c.a as well as libblazesym_c.so in the respective target folder (e.g., <project-root>/target/debug/).

In your C programs include blazesym.h (provided as part of the crate) from your source code and then link against the static or shared library, respectively. When linking statically, you may also need to link:

-lrt -ldl -lpthread -lm

An example of usage of the C API is in available in libbpf-bootstrap: https://github.com/libbpf/libbpf-bootstrap/blob/master/examples/c/profile.c

This example periodically samples the running process of every processor in a system and prints their stack traces.

A detailed documentation of the C API is available as part of the Rust documentation or can be generated locally from the current repository snapshot using cargo doc.

Dependencies

~0.2–1.1MB
~14K SLoC