7 releases

new 0.1.1 Mar 18, 2025
0.1.0 Mar 18, 2025
0.1.0-rc.2 Nov 5, 2024
0.1.0-rc.1 Sep 5, 2024
0.0.0 Nov 21, 2023

#566 in Debugging

Download history 3195/week @ 2024-11-28 3171/week @ 2024-12-05 2300/week @ 2024-12-12 1558/week @ 2024-12-19 775/week @ 2024-12-26 888/week @ 2025-01-02 2210/week @ 2025-01-09 2484/week @ 2025-01-16 1731/week @ 2025-01-23 3471/week @ 2025-01-30 3647/week @ 2025-02-06 3981/week @ 2025-02-13 2709/week @ 2025-02-20 4232/week @ 2025-02-27 9464/week @ 2025-03-06 6373/week @ 2025-03-13

23,497 downloads per month

BSD-3-Clause

1MB
20K SLoC

pipeline crates.io rustc

blazesym-c

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

Please note that this library adheres to Cargo's semantic versioning rules. While it is likely that the ABI is sufficiently flexible to cover incompatible versions, you do so at your own risk.

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

~1.3–3MB
~47K SLoC