Unsafe Rust bindings for the Open Asset Import Library (assimp).
See: Our safe assimp Rust library
Raw bindings for the C API of assimp.
We build, test, and provide prebuilt packages for the following targets:
- x86_64-pc-windows-msvc
- x86_64-apple-darwin
- x86_64-unknown-linux-gnu
Additional targets that work when building from source:
- aarch64-apple-darwin (M1 Macs, cross-compiled on x86_64.)
- aarch64-unknown-linux-gnu (Raspberry Pi 4b, built on the machine itself.)
Platforms that are not supported and won't build:
- x86_64-pc-windows-gnu (See: assimp/4686)
By default russimp-sys
is looking for the assimp
library in the system.
However there are many ways for the crate to install the library for you by specifying these crate features:
This features will download a prebuilt package from this repo's release page, these packages are built and published automatically every time we release a new version.
In addition, you can specify a local package by setting the RUSSIMP_PACKAGE_DIR
environment variable to the path of the package.
You can run the provided package binary to generate a package for your platform.
cargo run --bin package --features <INSERT-LINK-TYPE>
The build-assimp
feature will build the library from source and link it dynamically.
The static-link
feature will build the library from source and link it statically.
Building from source requires the following dependencies:
- CMake
- libclang (for
bindgen
) - A C/C++ compiler
- RECOMMENDED: Ninja (For Windows users the buildscript automatically uses Ninja if it finds it in the PATH)
By default russimp-sys
will statically link zlibstatic
. Enabling this feature will link to the system's zlib
library.
-
Complete overhaul of the build process.
-
Expose all assimp headers.
-
Rework CI pipeline.
-
Support for local assimp packaging and local package usage. (See:
prebuilt
feature) -
Remove vcpkg support.
-
Remove
nolibcxx
feature.
- Builds based on 5.2.5 release