microsoft / microsoft/onnxruntime

[Build] Eigen dependency download fails with SHA1 hash mismatch - build broken for v1.19.2

Open
#26,707 3 comments 1 reaction 1 assignee Assigned to @hariharans29 View on GitHub
build
Dominant language
C++
Stars
21.9k
Forks
4.2k
Avg merge
4d 11h
Merged PRs (30d)
184

Description

### Describe the issue

ONNX Runtime 1.19.2 build fails during CMake configure when FetchContent attempts to download the Eigen library. The SHA1 hash of the downloaded archive from GitLab no longer matches the expected hash hardcoded in `cmake/external/eigen.cmake`.

This is a blocking issue - the build cannot proceed at all.

**Root Cause:** GitLab dynamically regenerates zip archives on-the-fly, which can produce different SHA1 hashes even for the same commit. The Eigen archive hash has changed server-side.

### Urgency

Build is completely broken. No workaround available without patching the source.

### Target platform

- **Target OS:** Linux (Yocto/OpenEmbedded) - **Target Architecture:** ARM64 (Cortex-A35) - **Host OS:** Linux - **Build Type:** Cross-compilation

### Build script

- **ONNX Runtime Version:** 1.19.2
- **CMake Version:** 3.28
- **Build System:** Yocto/BitBake
- **Recipe:** meta-st-x-linux-ai/recipes-frameworks/onnxruntime/onnxruntime_1.19.2.bb

### Error / output

-- Downloading...
dst='.../build/deps/eigen-subbuild/eigen-populate-prefix/src/eigen-e7248b26a1ed53fa030c5c459f7ea095dfd276ac.zip'
-- Using src='https://gitlab.com/libeigen/eigen/-/archive/e7248b26a1ed53fa030c5c459f7ea095dfd276ac/eigen-e7248b26a1ed53fa030c5c459f7ea095dfd276ac.zip'
-- SHA1 hash of eigen-e7248b26a1ed53fa030c5c459f7ea095dfd276ac.zip
does not match expected value
expected: 'be8be39fdbc6e60e94fa7870b280707069b5b81a'
actual: '32b145f525a8308d7ab1c09388b2e288312d8eba'
-- Hash mismatch, removing...
[Retries multiple times, same result]
CMake Error at eigen-subbuild/eigen-populate-prefix/src/eigen-populate-stamp/download-eigen-populate.cmake:170 (message):
Each download failed!
FAILED: eigen-populate-prefix/src/eigen-populate-stamp/eigen-populate-download
ninja: build stopped: subcommand failed.
CMake Error at .../Modules/FetchContent.cmake:1679 (message):
Build step for eigen failed: 1
Call Stack (most recent call first):
.../Modules/FetchContent.cmake:1819:EVAL:2 (FetchContent_directPopulate)
.../Modules/FetchContent.cmake:1819 (cmake_language)
external/eigen.cmake:12 (FetchContent_Populate)
external/onnxruntime_external_deps.cmake:500 (include)
CMakeLists.txt:598 (include)
-- Configuring incomplete, errors occurred!
ERROR: Task (onnxruntime_1.19.2.bb:do_configure) failed with exit code '1'

### Visual Studio Version

_No response_

### GCC / Compiler Version

Target: aarch64-dey-linux (cortexa35-dey-linux) Flags: -mcpu=cortex-a35+crc -mbranch-protection=standard -fstack-protector-strong -O2

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.