iceoryx2 depends on iceoryx ?
Required information
Operating system:
zc@raspberrypi:~/iceoryx2$ uname -a Linux raspberrypi 6.8.0-1032-raspi #36-Ubuntu SMP PREEMPT_DYNAMIC Mon Jul 21 22:27:49 UTC 2025 aarch64 aarch64 aarch64 GNU/Linux
Rust version:
Output of: rustc --version
zc@raspberrypi:~/iceoryx2$ rustc --version rustc 1.89.0 (29483883e 2025-08-04)
Cargo version:
Output of: cargo --version
zc@raspberrypi:~/iceoryx2$ cargo --version cargo 1.89.0 (c24e10642 2025-06-23)
iceoryx2 version:
E.g. v1.2.3 or main branch
iceoryx2 version: IOX2_VERSION 0.6.1
Detailed log output:
zc@raspberrypi:~/iceoryx2$ cmake -S . -B target/ffi/build -DBUILD_EXAMPLES=ON -- [i] iceoryx2 dev setup options and params: -- BUILD_CXX: ON (Description: Build C++ components, e.g. container and bindings) -- BUILD_EXAMPLES: ON (Description: Build examples) -- RUST_TARGET_TRIPLET: (Description: The target triplet for cross compilation when 'RUST_BUILD_ARTIFACT_PATH' is not set, e.g. 'aarch64-unknown-linux-gnu') -- [i] iceoryx2 dev setup Rust feature flags (only used when 'RUST_BUILD_ARTIFACT_PATH' is not set): -- IOX2_FEATURE_DEV_PERMISSIONS: OFF (Description: The permissions of all resources will be set to read, write, execute for everyone.) -- IOX2_FEATURE_LIBC_PLATFORM: OFF (Description: A platform abstraction based on the libc crate, eliminating the need for bindgen. Only available on Linux.) -- IOX2_FEATURE_LOGGER_LOG: OFF (Description: Enables https://crates.io/crates/log as default logger) -- IOX2_FEATURE_LOGGER_TRACING: OFF (Description: Enables https://crates.io/crates/tracing as default logger) -- [i] iceoryx2 common options and params: -- BUILD_TESTING: OFF (Description: Build tests) -- SANITIZERS: OFF (Description: Build with undefined-behavior- and address-sanitizer) -- WARNING_AS_ERROR: OFF (Description: Fails if the compiler emits a warning) -- [i] iceoryx2-c options: -- RUST_BUILD_ARTIFACT_PATH: (Description: The path to the folder with the Rust build artifacts) -- [i] iceoryx2 test options and params: -- USE_SYSTEM_GTEST: OFF (Description: Uses gTest from the system and fails if it is not found) CMake Warning at CMakeLists.txt:114 (message): Using cargo to build the Rust part of iceoryx2. This is fine for development but for production, it is recommended to use an existing installation with
'-DRUST_BUILD_ARTIFACT_PATH=/full/path/to/iceoryx2/target/release'!
-- iceoryx_hoofs not found! Using FetchContent! [ 11%] Performing download step (git clone) for 'iceoryx-populate' Cloning into 'iceoryx-src'... fatal: unable to access 'https://gitclone.com/github.com/eclipse-iceoryx/iceoryx.git/': The requested URL returned error: 502 Cloning into 'iceoryx-src'... fatal: unable to access 'https://gitclone.com/github.com/eclipse-iceoryx/iceoryx.git/': The requested URL returned error: 502 Cloning into 'iceoryx-src'... fatal: unable to access 'https://gitclone.com/github.com/eclipse-iceoryx/iceoryx.git/': The requested URL returned error: 502 -- Had to git clone more than once: 3 times. CMake Error at iceoryx-subbuild/iceoryx-populate-prefix/tmp/iceoryx-populate-gitclone.cmake:39 (message): Failed to clone repository: 'https://github.com/eclipse-iceoryx/iceoryx.git'
gmake[2]: *** [CMakeFiles/iceoryx-populate.dir/build.make:102: iceoryx-populate-prefix/src/iceoryx-populate-stamp/iceoryx-populate-download] Error 1 gmake[1]: *** [CMakeFiles/Makefile2:83: CMakeFiles/iceoryx-populate.dir/all] Error 2 gmake: *** [Makefile:91: all] Error 2
CMake Error at /usr/share/cmake-3.28/Modules/FetchContent.cmake:1679 (message): Build step for iceoryx failed: 2 Call Stack (most recent call first): /usr/share/cmake-3.28/Modules/FetchContent.cmake:1819:EVAL:2 (__FetchContent_directPopulate) /usr/share/cmake-3.28/Modules/FetchContent.cmake:1819 (cmake_language) /usr/share/cmake-3.28/Modules/FetchContent.cmake:2033 (FetchContent_Populate) iceoryx2-cxx/cmake/fetch-iceoryx-hoofs.cmake:37 (FetchContent_MakeAvailable) CMakeLists.txt:180 (include)
-- Configuring incomplete, errors occurred!
Expected result or behaviour: how to fix it ?
@1511563371 For the C++ bindings we need some components usually found in a base library, like a optional, vector and duration. These also need to be safety certified and iceoryx classic already has a C++ base library called iceoryx_hoofs. We intend to move the relevant components to the iceoryx2 repo or re-implement them if necessary. The main issue is that iceoryx classic is licensed as Apache 2 and iceoryx2 has Apache 2 or MIT. We'd like to re-license the iceoryx_hoofs subset, but it is a slow process.
Now to your actual problem. I'm not quite sure what happens. It seems cmake was not able to clone the repository. Github had some issues last week. Can you try it again?
Can you also try with the latest main?