This crate provides bindings to
onnxruntime. Raw bindings
to the C API (sys module) as well as some opinionated wrappers to make
onnxruntime usable safely from plain Rust.
In order to build and use this crate with cargo you must either have
onnxruntime installed on your system or point to the release (or build) of
onnxruntime you want to use manually.
Tested (on Linux) with onnxruntime versions:
Download from: https://github.com/microsoft/onnxruntime/releases
Then either install it globally (for example /usr/local/{lib,include/) or
export the following environment variables:
ONNXRUNTIME_LIB_DIR: path to the lib directory of the release
ONNXRUNTIME_INCLUDE_DIR: path to the include directory of the release
Also make sure the lib directory is also part of LD_LIBRARY_PATH.
Follow the guide at: https://github.com/microsoft/onnxruntime/blob/master/BUILD.md
For Linux/Mac OS X:
- The lib directory will be:
onnxruntime/build/Linux/RelWithDebInfo/ - The include directory will be:
onnxruntime/include/onnxruntime/core/session/
In onnxruntime directory:
./build.sh --config RelWithDebInfo --build_shared_lib --parallel
export ONNXRUNTIME_LIB_DIR=$PWD/build/Linux/RelWithDebInfo/
export ONNXRUNTIME_INCLUDE_DIR=$PWD/include
export LD_LIBRARY_PATH=$ONNXRUNTIME_LIB_DIR:$LD_LIBRARY_PATHCopyright 2020 Basile Henry, Chris Chalmers