A

aurora-psdk-onnx-runtime-devel

onnxruntime-devel RPM for Aurora OS

Cross-compile ONNX Runtime as a single onnxruntime-devel RPM package, consumable from the old Aurora PSDK as a build-time dependency (e.g. for Flutter FFI bindings).

Quick start

./deploy/auroraos/run_docker.sh --sdk-dir ~/adq-sdk

Output: out/onnxruntime-devel-<ver>-<rel>.aarch64.rpm.

For armv7hl:

./deploy/auroraos/run_docker.sh --sdk-dir ~/adq-sdk --target-arch armv7hl

First run will:

  • Build the adq-crossbuild Docker image (~5 min)
  • Clone qbs-for-aurora-os into --sdk-dir
  • Download Aurora sysroot
  • Clone ONNX Runtime sources (recursive, ~1.5 GB)
  • Cross-compile (~30–60 min on first run)
  • Package RPM

Build configuration

See deploy/auroraos/qbs/onnxruntime.qbs. Defaults:

  • ORT version: 1.26.0
  • Full feature set (any .onnx model loads directly, no .ort conversion needed)
  • BUILD_SHARED_LIB=ON, USE_FULL_PROTOBUF=ON, USE_XNNPACK=ON
  • BUILD_UNIT_TESTS=OFF, ENABLE_PYTHON=OFF
  • CMAKE_BUILD_TYPE=Release

Override in onnxruntime.qbs:

AuroraOnnxRuntime {
    version: "1.20.0"
    useXnnpack: false
    buildType: "MinSizeRel"
}

Installing into Aurora PSDK

After the RPM is built, install it into the PSDK target rootfs:

sb2 -t <target> -R zypper install ./out/onnxruntime-devel-*.rpm

(or via sdk-assistant / your usual workflow).

Prerequisites for the PoC

This PoC depends on patched versions of upstream repos (on branch dev-onnxruntime-poc):

  • qbs-for-aurora-os — adds AuroraOnnxRuntime.qbs (build) and AuroraLibraryRpm.qbs (packaging)
  • adq-cross-build — adds python3 to the Docker image (needed by ORT cmake)

run_docker.sh clones default upstream branches by default — for the PoC, override:

SDK_DIR=~/adq-sdk
git -C "$SDK_DIR/qbs-for-aurora-os" checkout dev-onnxruntime-poc
# Force docker image rebuild from poc branch
./run_docker.sh --sdk-dir "$SDK_DIR" --build-image