libftdi1-sys is a crate providing Rust bindings to the C library
libftdi1.
This crate requires libftdi1 version 1.4 (August 2017) or later to be available as a system library
that can be found with pkg-config (everywhere except windows/MSVC) or vcpkg (windows/MSVC)
unless you activate the vendored feature.
By default the crate uses pregenerated bindings which should be fine in most cases.
In special cases the bindings can be regenerated using the bindgen feature.
Regenerating bindings has an additional requirement that
libclang must be installed and visible on your path. If you are using a
gcc-toolchain and don't want to install the entirity of LLVM just for
libclang, you can use the following procedure (using a Debian-based
ARM system as an example):
sudo apt-get install libclang-dev
export LIBCLANG_PATH=/usr/lib/llvm-7/lib
export C_INCLUDE_PATH=/usr/lib/gcc/arm-linux-gnueabihf/8/include
cargo build
The Minimum Supported Rust Version (MSRV) is stable 1.34.
The bindgen feature is developer-oriented and does not provide any MSRV guarantees.
libusb1-sys: depend onlibusb1-sysand use reallibusbtypes instead of placeholders. This makes it possible to interact directly with the underlyinglibusbstructures.vendored: build a custom copy oflibftdiinstead of using the system one. Note that this includes LGPL code in your build.bindgen: Generate bindings tolibftdiat compile time.
This crate is expected to be passively maintained, not actively updated.
That being said, if you want to update binding generation,
you can set the LIBFTDI1_SYS_DEVEL environment variable with any value
so that an updated binding file is written in src alongside the original one
enabling you to compare them and copy it over the old one to update.