Installation and Build Instructions
Building Bitwuzla
# Clone Bitwuzla repository
git clone https://github.com/bitwuzla/bitwuzla
cd bitwuzla
# Configure Bitwuzla release build
./configure.py
# Build and install
cd build && ninja install # or just `ninja` to only build Bitwuzla
Note
If Bitwuzla is not installed, you can find the binary in build/src/main/
and the library in build/src/
.
Required Dependencies
Optional Dependencies
Note
If the build system does not find CaDiCaL or SymFPU, it will fall back to downloading and building a suitable version itself.
Python Bindings
# Clone Bitwuzla repository
git clone https://github.com/bitwuzla/bitwuzla
cd bitwuzla
# Build and install Bitwuzla Python bindings
pip install .
For how to use the Python bindings, please refer to the Python API Documentation.
Required Dependencies
Building without pip
# Clone Bitwuzla repository
git clone https://github.com/bitwuzla/bitwuzla
cd bitwuzla
./configure.py --python
# Build Python bindings
cd build && ninja python-bindings
Note
The Python module can be found in build/src/api/python/
.
Cross Compiling for Windows
Cross compiling Bitwuzla with Mingw-w64 can be done as follows:
# Clone Bitwuzla repository
git clone https://github.com/bitwuzla/bitwuzla
cd bitwuzla
# Configure Bitwuzla release build
./configure.py --win64
# Build and install
cd build && ninja
Required Dependencies
API Documentation
The documentation for the latest stable release is available at: https://bitwuzla.github.io/docs
You can build the documentation from the repository as follows.
./configure.py --docs --python
cd build && ninja docs
The documentation can be found in build/docs/
.
Required Dependencies
Note
Configure with --python
to include the documentation for the Python
bindings.
Code Coverage Reports
# Generate code coverage reports for debug build
./configure.py debug --coverage
cd build && meson test && ninja coverage
Note
The code coverage reports can be found in build/meson-logs/
.