Please check the build logs and, if you believe this is docs.rs' fault, open an issue.
Rust bindings for
If you are interested in a Rust wrapper for these bindings, see clang-rs.
Supported on the stable, beta, and nightly Rust channels.
Released under the Apache License 2.0.
To target a version of
libclang, enable one of the following Cargo features:
libclang3.5 or later (Documentation)
libclang3.6 or later (Documentation)
libclang3.7 or later (Documentation)
libclang3.8 or later (Documentation)
If you do not enable one of these features, the API provided by
libclang 3.5 will be available by
By default, this crate will attempt to link to
libclang dynamically. In this case, this crate
depends on the
libclang shared library (
libclang.so on Linux,
libclang.dylib on OS X,
libclang.dll on Windows). If you want to link to
libclang statically instead, enable the
static Cargo feature. In this case, this crate depends on the LLVM and Clang static libraries.
These libraries can be either be installed as a part of Clang or downloaded here.
Note: The downloads for LLVM and Clang 3.8 do not include the
libclang.a static library. This
means you cannot link to this version of
libclang statically unless you build it from source.
The following environment variables, if set, are used by this crate to find the required libraries:
LLVM_CONFIG_PATH- provides a path to an
LIBCLANG_PATH- provides a path to a directory containing a
LIBCLANG_STATIC_PATH- provides a path to a directory containing LLVM and Clang static libraries
libclang shared library will be searched for in the directory provided by the
LIBCLANG_PATH environment variable if it was set. If this fails, the directory returned by
llvm-config --libdir will be searched. If neither of these approaches is successful, a list of
likely directories will be searched (e.g.,
/usr/local/lib on Linux).
On Linux, running an executable that has been dynamically linked to
libclang may require you to
add a path to
libclang.so to the
LD_LIBRARY_PATH environment variable. The same is true on OS
X, except the
DYLD_LIBRARY_PATH environment variable is used instead.
On Windows, running an executable that has been dynamically linked to
libclang requires that
libclang.dll can be found by the executable at runtime. See
here for more information.
The availability of
llvm-config is not optional for static linking. Ensure that an instance of
this executable can be found on your system's path or set the
variable. The required LLVM and Clang static libraries will be searched for in the same way as the
shared library is searched for, except the
LIBCLANG_STATIC_PATH environment variable is used in
place of the
LIBCLANG_PATH environment variable.