-
Notifications
You must be signed in to change notification settings - Fork 31
Open
Description
I am attempting to build this for RP Pi Zero 2 W and am getting this error
error: failed to run custom build command for `libcamera-sys v0.3.0`
Caused by:
process didn't exit successfully: `/target/release/build/libcamera-sys-afb3f3cd418809b6/build-script-build` (exit status: 101)
--- stdout
cargo:rerun-if-env-changed=LIBCAMERA_NO_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_ALLOW_CROSS
cargo:rerun-if-env-changed=PKG_CONFIG_ALLOW_CROSS
cargo:rerun-if-env-changed=PKG_CONFIG_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG
cargo:rerun-if-env-changed=LIBCAMERA_STATIC
cargo:rerun-if-env-changed=LIBCAMERA_DYNAMIC
cargo:rerun-if-env-changed=PKG_CONFIG_ALL_STATIC
cargo:rerun-if-env-changed=PKG_CONFIG_ALL_DYNAMIC
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_SYSROOT_DIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
cargo:rerun-if-env-changed=SYSROOT
cargo:rerun-if-env-changed=LIBCAMERA_STATIC
cargo:rerun-if-env-changed=LIBCAMERA_DYNAMIC
cargo:rerun-if-env-changed=PKG_CONFIG_ALL_STATIC
cargo:rerun-if-env-changed=PKG_CONFIG_ALL_DYNAMIC
cargo:rustc-link-search=native=/usr/local/lib/x86_64-linux-gnu
cargo:rustc-link-lib=camera
cargo:rustc-link-lib=camera-base
cargo:rerun-if-env-changed=PKG_CONFIG_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG
cargo:rerun-if-env-changed=PKG_CONFIG
cargo:rerun-if-env-changed=LIBCAMERA_STATIC
cargo:rerun-if-env-changed=LIBCAMERA_DYNAMIC
cargo:rerun-if-env-changed=PKG_CONFIG_ALL_STATIC
cargo:rerun-if-env-changed=PKG_CONFIG_ALL_DYNAMIC
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_PATH_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_PATH
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_LIBDIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR_aarch64_unknown_linux_gnu
cargo:rerun-if-env-changed=TARGET_PKG_CONFIG_SYSROOT_DIR
cargo:rerun-if-env-changed=PKG_CONFIG_SYSROOT_DIR
cargo:rustc-link-lib=camera
cargo:rerun-if-changed=c_api/controls.h
cargo:rerun-if-changed=c_api/version.h
cargo:rerun-if-changed=c_api/camera_manager.h
cargo:rerun-if-changed=c_api/camera.h
cargo:rerun-if-changed=c_api/signal.h
cargo:rerun-if-changed=c_api/framebuffer.h
cargo:rerun-if-changed=c_api/stream.h
cargo:rerun-if-changed=c_api/logging.h
cargo:rerun-if-changed=c_api/pixel_format.h
cargo:rerun-if-changed=c_api/request.h
cargo:rerun-if-changed=c_api/geometry.h
cargo:rerun-if-changed=c_api/framebuffer_allocator.h
cargo:rerun-if-changed=c_api/libcamera_ids.hpp
cargo:rerun-if-changed=c_api/geometry.cpp
cargo:rerun-if-changed=c_api/controls.cpp
cargo:rerun-if-changed=c_api/logging.cpp
cargo:rerun-if-changed=c_api/camera.cpp
cargo:rerun-if-changed=c_api/request.cpp
cargo:rerun-if-changed=c_api/framebuffer.cpp
cargo:rerun-if-changed=c_api/pixel_format.cpp
cargo:rerun-if-changed=c_api/framebuffer_allocator.cpp
cargo:rerun-if-changed=c_api/stream.cpp
cargo:rerun-if-changed=c_api/camera_manager.cpp
OUT_DIR = Some(/target/aarch64-unknown-linux-gnu/release/build/libcamera-sys-89d397fb4369d845/out)
OPT_LEVEL = Some(3)
TARGET = Some(aarch64-unknown-linux-gnu)
HOST = Some(x86_64-unknown-linux-gnu)
cargo:rerun-if-env-changed=CXX_aarch64-unknown-linux-gnu
CXX_aarch64-unknown-linux-gnu = None
cargo:rerun-if-env-changed=CXX_aarch64_unknown_linux_gnu
CXX_aarch64_unknown_linux_gnu = Some(aarch64-linux-gnu-g++)
cargo:rerun-if-env-changed=CC_KNOWN_WRAPPER_CUSTOM
CC_KNOWN_WRAPPER_CUSTOM = None
RUSTC_WRAPPER = None
cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
CRATE_CC_NO_DEFAULTS = None
DEBUG = Some(false)
CARGO_CFG_TARGET_FEATURE = Some(neon)
cargo:rerun-if-env-changed=CXXFLAGS_aarch64-unknown-linux-gnu
CXXFLAGS_aarch64-unknown-linux-gnu = None
cargo:rerun-if-env-changed=CXXFLAGS_aarch64_unknown_linux_gnu
CXXFLAGS_aarch64_unknown_linux_gnu = None
cargo:rerun-if-env-changed=TARGET_CXXFLAGS
TARGET_CXXFLAGS = None
cargo:rerun-if-env-changed=CXXFLAGS
CXXFLAGS = None
CARGO_ENCODED_RUSTFLAGS = Some()
exit status: 0
exit status: 0
exit status: 0
exit status: 0
exit status: 0
exit status: 0
exit status: 0
exit status: 0
exit status: 0
exit status: 0
cargo:rerun-if-env-changed=AR_aarch64-unknown-linux-gnu
AR_aarch64-unknown-linux-gnu = None
cargo:rerun-if-env-changed=AR_aarch64_unknown_linux_gnu
AR_aarch64_unknown_linux_gnu = Some(aarch64-linux-gnu-ar)
cargo:rerun-if-env-changed=ARFLAGS_aarch64-unknown-linux-gnu
ARFLAGS_aarch64-unknown-linux-gnu = None
cargo:rerun-if-env-changed=ARFLAGS_aarch64_unknown_linux_gnu
ARFLAGS_aarch64_unknown_linux_gnu = None
cargo:rerun-if-env-changed=TARGET_ARFLAGS
TARGET_ARFLAGS = None
cargo:rerun-if-env-changed=ARFLAGS
ARFLAGS = None
cargo:rustc-link-lib=static=camera_c_api
cargo:rustc-link-search=native=/target/aarch64-unknown-linux-gnu/release/build/libcamera-sys-89d397fb4369d845/out
cargo:rerun-if-env-changed=CXXSTDLIB_aarch64-unknown-linux-gnu
CXXSTDLIB_aarch64-unknown-linux-gnu = None
cargo:rerun-if-env-changed=CXXSTDLIB_aarch64_unknown_linux_gnu
CXXSTDLIB_aarch64_unknown_linux_gnu = None
cargo:rerun-if-env-changed=TARGET_CXXSTDLIB
TARGET_CXXSTDLIB = None
cargo:rerun-if-env-changed=CXXSTDLIB
CXXSTDLIB = None
cargo:rustc-link-lib=stdc++
--- stderr
Failed to run rustfmt: cannot find binary path (non-fatal, continuing)
/usr/bin/../lib/gcc-cross/aarch64-linux-gnu/9/../../../../include/c++/9/utility:68:10: fatal error: 'bits/c++config.h' file not found
thread 'main' panicked at /Users/username/.cargo/registry/src/index.crates.io-6f17d22bba15001f/libcamera-sys-0.3.0/build.rs:87:39:
Unable to generate bindings: ClangDiagnostic("/usr/bin/../lib/gcc-cross/aarch64-linux-gnu/9/../../../../include/c++/9/utility:68:10: fatal error: 'bits/c++config.h' file not found\n")
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Build failed!
This is the cross config I came up with by looking at the CI. Libcamera builds however it still fails not sure what to do.
[workspace.metadata.cross.target.aarch64-unknown-linux-gnu]
# Install libssl-dev:arm64, see <https://github.com/cross-rs/cross/blob/main/docs/custom_images.md#adding-dependencies-to-existing-images>
pre-build = [
"dpkg --add-architecture $CROSS_DEB_ARCH",
"apt-get update",
"apt-get -y install python3-pip",
"apt-get -y install pkg-config",
"apt-get -y install g++-aarch64-linux-gnu",
"pip install meson",
"apt-get -y install libyaml-dev python3-yaml python3-ply python3-jinja2 ninja-build clang",
"git clone https://git.libcamera.org/libcamera/libcamera.git deps/libcamera --branch v0.1.0",
"cd deps/libcamera",
"meson build -Dipas=vimc -Dpipelines=vimc",
"ninja -C build install"
]
Metadata
Metadata
Assignees
Labels
No labels