diff --git a/.gitea/scripts/install-linux-build-dependencies.sh b/.gitea/scripts/install-linux-build-dependencies.sh index 1630291..ae0446e 100644 --- a/.gitea/scripts/install-linux-build-dependencies.sh +++ b/.gitea/scripts/install-linux-build-dependencies.sh @@ -80,6 +80,12 @@ case "$target" in sudo dpkg-deb --extract "$package" "$sysroot" done + # Recreate Ubuntu's merged-/usr root links. libc development linker + # scripts refer to /lib paths, while libc6 stores the files in + # /usr/lib; --sysroot expects the same links as a complete rootfs. + sudo ln -s usr/lib "$sysroot/lib" + sudo ln -s usr/lib64 "$sysroot/lib64" + # Architecture-independent development packages may already be # installed on the host, so apt does not download them again. Their # pkg-config files contain no host binaries and are safe to reuse with diff --git a/crates/bds-ui/tests/packaging_assets.rs b/crates/bds-ui/tests/packaging_assets.rs index f12cf8b..6c28074 100644 --- a/crates/bds-ui/tests/packaging_assets.rs +++ b/crates/bds-ui/tests/packaging_assets.rs @@ -195,6 +195,8 @@ fn tagged_releases_are_built_and_packaged_with_rust_tools() { "Architectures: arm64", "--download-only", "dpkg-deb --extract", + "ln -s usr/lib \"$sysroot/lib\"", + "ln -s usr/lib64 \"$sysroot/lib64\"", "/usr/share/pkgconfig/.", "/opt/ruds-x64-sysroot", ] {