book/src/requirements.md
This page lists the requirements for running bindgen and how to get them.
bindgen leverages libclang to preprocess, parse, and type check C and C++
header files.
It is required to use Clang 9.0 or greater.
If you use winget:
winget install LLVM.LLVM
Alternatively, you can download and install the official pre-built binary from LLVM download page.
You will also need to set LIBCLANG_PATH as an environment
variable pointing
to the bin directory of your LLVM install. For example, if you installed LLVM
to D:\programs\LLVM, then you'd set the value to be D:\programs\LLVM\bin.
Alternatively, for Mingw64, you can install clang via
pacman -S mingw64/mingw-w64-x86_64-clang
If you use Homebrew:
$ brew install llvm
If you use MacPorts:
$ port install clang
# apt install libclang-dev
If you want to use the function bindgen::Builder::dump_preprocessed_input, then you also need the package clang.
# pacman -S clang
# dnf install clang-devel
# pkg_add llvm
Add export LIBCLANG_PATH=/usr/local/lib to your profile.
If your package manager doesn't yet offer Clang 9.0, you'll need to build from source. For that, follow the instructions here.
Those instructions list optional steps. For bindgen:
clang-tools-extra