capstone-sys
Low-level, unsafe Rust bindings for the capstone
disassembly library.
Requirements
- Rust version >= 1.19
- We export Rust unions, which were first stabilized with release 1.19
- One of the following:
- A toolchain capable of compiling
capstone
(see themake.sh
script) - A pre-built version 3.0
capstone
dynamic library (specify theuse_system_capstone
feature)
- A toolchain capable of compiling
Features
capstone-sys
will build differently based on features that are specified in Cargo.toml
.
capstone-sys
supports the following features:
use_system_capstone
: use the system capstone instead of the bundled copy of thecapstone
library.- Requires that
capstone
is already installed on the system. We highly recommend that you supply the exact version bundled withcapstone-sys
.- See the
CAPSTONE_REVISION
variable inscripts/update_capstone.sh
to determine the exact Capstone version.
- See the
- Eliminates the default step of compiling
capstone
- Requires that
build_capstone_cmake
: if using the bundledcapstone
library, then buildcapstone
usingcmake
.use_bindgen
: instead of using the pre-generated capstone bindings, dynamically generate bindings withbindgen
.