JuliaPackaging/BinaryBuilderBase.jl

Rust 1.57.0 currently not working on non-x86_64 Musl platforms

Opened this issue · 1 comments

Our new shiny Rust 1.57.0 toolchain passes basic tests on all platforms, but it fails to build librsvg on non-x86_64 Musl platforms, because libraries need libc.musl-<ARCH>.so.1, but we don't have such file in our current non-x86_64 Musl toolchains:

% julia -e 'using BinaryBuilderBase; BinaryBuilderBase.runshell(Platform("aarch64", "linux"; libc="musl"))'
sandbox:${WORKSPACE} # echo 'int main(){return 0;}' | cc -x c -; readelf -d a.out | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [libc.musl-aarch64.so.1]
sandbox:${WORKSPACE} # qfind / -name "libc.*"
/lib/libc.musl-x86_64.so.1
/lib/libc.so.6
/lib64/libc.so.6
/workspace/.mounts/GCCBootstrap-x86_64-linux-musl.v6.1.0.x86_64-linux-musl.squashfs/x86_64-linux-musl/sys-root/usr/lib/libc.a
/workspace/.mounts/GCCBootstrap-x86_64-linux-musl.v6.1.0.x86_64-linux-musl.squashfs/x86_64-linux-musl/sys-root/usr/lib/libc.so
/workspace/.mounts/GCCBootstrap-aarch64-linux-musl.v6.1.0.x86_64-linux-musl.squashfs/aarch64-linux-musl/sys-root/usr/lib/libc.a
/workspace/.mounts/GCCBootstrap-aarch64-linux-musl.v6.1.0.x86_64-linux-musl.squashfs/aarch64-linux-musl/sys-root/usr/lib/libc.so
/opt/aarch64-linux-musl/aarch64-linux-musl/sys-root/usr/lib/libc.a
/opt/aarch64-linux-musl/aarch64-linux-musl/sys-root/usr/lib/libc.so
/opt/x86_64-linux-musl/x86_64-linux-musl/sys-root/usr/lib/libc.a
/opt/x86_64-linux-musl/x86_64-linux-musl/sys-root/usr/lib/libc.so

However the libc.so file has the correct soname (correctly set in the GCC build recipe: [1] and [2]):

sandbox:${WORKSPACE} # readelf -d /opt/aarch64-linux-musl/aarch64-linux-musl/sys-root/usr/lib/libc.so | grep SONAME
 0x000000000000000e (SONAME)             Library soname: [libc.musl-aarch64.so.1]

The log of librsvg shows

[15:34:43] error: linking with `aarch64-linux-musl-gcc` failed: exit status: 1
[15:34:43]   |
[15:34:43]   = note: "aarch64-linux-musl-gcc" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crt1.o" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crti.o" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtbegin.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.0.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.1.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.10.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.11.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.12.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.13.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.14.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.15.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.2.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.3.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.4.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.5.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.6.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.7.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.8.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.rsvg_convert.6fd34acb-cgu.9.rcgu.o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee.5addkaf2o4nmsl3h.rcgu.o" "-Wl,--as-needed" "-L" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps" "-L" "/workspace/srcdir/librsvg-2.52.4/target/release/deps" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/workspace/destdir/lib" "-L" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib" "-Wl,-Bstatic" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libchrono-c792d6f4998d4088.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/liblibrsvg-ba289cb112842c58.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libpangocairo-fc8293f0172fda0c.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libpango_cairo_sys-2d1aac6d528cf02d.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/librctree-e2c0ed45f4ef179a.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libxml5ever-dadfca9b4682f2c0.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libtime-6e8b4bba84f95675.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libencoding-b94e41ba286c7fd5.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libencoding_index_tradchinese-98eac038e022c7cb.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libencoding_index_simpchinese-aabae2f38f41c9c5.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libencoding_index_japanese-a997501dd864530b.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libencoding_index_korean-791f380a99b6316a.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libencoding_index_singlebyte-1fd5613b3670cd08.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/librgb-0b3442b02f1a9aa9.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libbytemuck-209bba03124c4c37.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libitertools-f9ac0928a6fe0b9d.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcast-c3cf1dbc9c6860e4.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/librayon-c1d5ad16918680f8.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/librayon_core-d848dbae3986e26c.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libnum_cpus-9a40e94cead12246.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcrossbeam_deque-8d0fa79c6475221f.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcrossbeam_epoch-fd6aa70bb6209d64.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libmemoffset-a04089e691c7b711.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcrossbeam_channel-89dd2edc7901e78f.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcrossbeam_utils-05081808448320d8.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libeither-9e8a4c701192e89a.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libnalgebra-da67ea8ae8b72d88.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libnum_rational-05f04cf100d735c9.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libnum_integer-76b449b170c687e8.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libtypenum-5434f692a4e5da1f.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libsimba-cf5536ee80743066.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libnum_complex-126a881f4609710a.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libmatrixmultiply-1c186a9acdef3a20.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/librawpointer-2ae42a7d111148cd.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libapprox-5e1018a268020f02.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcairo-6fd585d0d19e9d35.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcairo_sys-4ad94b885c848461.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libpango-faac5cc4ef98ebf2.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libpango_sys-cfdec11c1fbbbdae.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libselectors-0cc53b6a5e264930.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libthin_slice-216012155bf23b90.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libservo_arc-a0db8c4c06d47c48.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libstable_deref_trait-f7af783407e33764.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libnodrop-58049dfc896a484e.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/liblog-5dfc53d734091479.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfxhash-5ca1277a4e2e6501.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libbyteorder-8e6e2e93c0e40d80.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libdata_url-db131dc6a49c72b5.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libgdk_pixbuf-b5cf945ac8fb9f48.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libgdk_pixbuf_sys-681f0c0831bbbda5.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/liburl-da57bde2b7245447.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libidna-196c43a13d1eca57.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libunicode_normalization-3edebca0e39827d6.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libtinyvec-db493d2c98876320.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libtinyvec_macros-0d8a11e787a947fe.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libunicode_bidi-5f51a6c973e6ed74.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libform_urlencoded-6a4ba6c963489d57.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libpercent_encoding-2c654cef3df97fae.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/liblocale_config-6f17292dbf01d809.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libregex-10dedd1ebce4a66d.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libaho_corasick-7e912c3e7f566c6f.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libmemchr-c5c914d16bdd24eb.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libregex_syntax-1416ecf41d5237d2.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/liblanguage_tags-957743de78c62d3e.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfloat_cmp-179c7f1b9d60ec4d.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libnum_traits-6c236c2f6b25301f.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libmarkup5ever-d0bd2b751c852846.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libstring_cache-716a38b304ecf0e2.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libprecomputed_hash-e708050c64fc7f8d.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libserde-201f2c9db638b3bf.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libparking_lot-c137993f1a6ce04b.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libparking_lot_core-0dbbca55ae56d2d1.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/liblock_api-92e15ac73bd375bc.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libscopeguard-c9b7df94bbdc7a83.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libinstant-db9e2146401e85fb.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcfg_if-88f6a1a0de010767.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/liblazy_static-0ffe0dc747383ddf.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libtendril-9a275559df6772bc.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libutf8-a948e61845f33c10.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfutf-3502f25507572932.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libdebug_unreachable-0b6794fe545a05e3.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libmac-95108075a64de6df.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libcssparser-a67d987767be6e2b.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libitoa-9754b96a9f6a0f99.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libdtoa_short-fc39fe2cbc52e7c4.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libdtoa-652b29c5bec5b81c.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libmatches-6807a7fa4705aaef.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libphf-4bf70509424c3386.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libphf_shared-cdf7f4b7eb96e51f.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libsiphasher-d989e332b16ee17f.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libgio-d95f46b1833e1a23.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libthiserror-1655dc936e8fe6c8.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfutures_io-40c27e4311a7c875.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libglib-10ebbcefd45b7ac2.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfutures_executor-def87426a02153a1.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfutures_util-fe0746bd1ac2f1bd.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libslab-d2493ab0afb74cfe.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libpin_project_lite-444b7e15ea54127c.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libpin_utils-1089fcd8d77ac6c8.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfutures_channel-cf3e5143012885a7.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfutures_task-0ade75c8c9e0e324.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libfutures_core-83c0cfc3ceaa4c65.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libsmallvec-0d3152e64433c316.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libonce_cell-62f2db780be4f172.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libgio_sys-7f2f3869953441b9.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libgobject_sys-f3590af0365d77b8.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libglib_sys-bd6d7254bb4359a1.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libclap-a55a3a8df0759dd0.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libvec_map-ca3911f48477b989.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libtextwrap-08e777dcdecee451.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libunicode_width-14d93714776d85cb.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libstrsim-17105fc0ec5edd81.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libbitflags-b4b367f6359f7bff.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libatty-fa3feb3a23f2202d.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/liblibc-1a967cebe0d5f101.rlib" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/libansi_term-c5005c18cc08fad2.rlib" "-Wl,--start-group" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libstd-2385126132a13d8d.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libpanic_unwind-53dc449cb9bfde94.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libminiz_oxide-621b428e042a5b5a.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libadler-bd06e9884af8796d.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libobject-71c5b205e30677a1.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libmemchr-a7cff77931af3228.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libaddr2line-3b48360072a1a766.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libgimli-084c846f66a77474.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libstd_detect-49b6dc0c3b70fd49.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_demangle-48d1908bd81ab682.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libhashbrown-0b97d58c1cafab68.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_std_workspace_alloc-c68db2691c4321cd.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libunwind-45964380a14b009e.rlib" "-lunwind" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libcfg_if-f763d2e124225658.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/liblibc-332be3d0f34d6401.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/liballoc-588127cab293d3c3.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_std_workspace_core-51ef7488a5581ffe.rlib" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libcore-93baf229ba52b9d4.rlib" "-Wl,--end-group" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/libcompiler_builtins-e68536d86a2479c4.rlib" "-Wl,-Bdynamic" "-lpangoft2-1.0" "-lxml2" "-lgdk_pixbuf-2.0" "-lfontconfig" "-lfreetype" "-lgio-2.0" "-lpangocairo-1.0" "-lpango-1.0" "-lharfbuzz" "-lpng16" "-lz" "-lcairo-gobject" "-lcairo" "-lgobject-2.0" "-lglib-2.0" "-lpangocairo-1.0" "-lpango-1.0" "-lgobject-2.0" "-lglib-2.0" "-lharfbuzz" "-lcairo" "-lcairo-gobject" "-lgobject-2.0" "-lglib-2.0" "-lcairo" "-lpango-1.0" "-lgobject-2.0" "-lglib-2.0" "-lharfbuzz" "-lgdk_pixbuf-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lgio-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lglib-2.0" "-lgobject-2.0" "-lglib-2.0" "-Wl,--eh-frame-hdr" "-Wl,-znoexecstack" "-nostartfiles" "-L" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib" "-L" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained" "-o" "/workspace/srcdir/librsvg-2.52.4/target/aarch64-unknown-linux-musl/release/deps/rsvg_convert-546b0b5de5111dee" "-Wl,--gc-sections" "-static" "-Wl,-zrelro" "-Wl,-znow" "-Wl,-O1" "-nodefaultlibs" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtend.o" "/opt/x86_64-linux-musl/toolchains/1.57.0-x86_64-unknown-linux-musl/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtn.o"
[15:34:43]   = note: /opt/aarch64-linux-musl/bin/../lib/gcc/aarch64-linux-musl/4.8.5/../../../../aarch64-linux-musl/bin/ld: warning: libc.musl-aarch64.so.1, needed by /workspace/destdir/lib/libxml2.so, not found (try using -rpath or -rpath-link)
[15:34:43]           /opt/aarch64-linux-musl/bin/../aarch64-linux-musl/sys-root/usr/local/lib/libmount.so.1: undefined reference to `getgroups'
[15:34:43]           /workspace/destdir/lib/libgio-2.0.so: undefined reference to `ngettext'
[15:34:43]           /workspace/destdir/lib/libxml2.so: undefined reference to `puts'
[15:34:43]           /opt/aarch64-linux-musl/bin/../aarch64-linux-musl/sys-root/usr/local/lib/libX11.so.6: undefined reference to `putc'
[15:34:43]           /workspace/destdir/lib/libgio-2.0.so: undefined reference to `tolower'
[15:34:43]           /opt/aarch64-linux-musl/bin/../aarch64-linux-musl/sys-root/usr/local/lib/libmount.so.1: undefined reference to `warn'
[15:34:43]           /opt/aarch64-linux-musl/bin/../aarch64-linux-musl/sys-root/usr/local/lib/libmount.so.1: undefined reference to `umask'
[15:34:43]           /opt/aarch64-linux-musl/bin/../aarch64-linux-musl/sys-root/usr/local/lib/libpcre.so.1: undefined reference to `ispunct'
[15:34:43]           /workspace/destdir/lib/libglib-2.0.so: undefined reference to `__ctype_get_mb_cur_max'
[15:34:43]           /workspace/destdir/lib/libglib-2.0.so: undefined reference to `fscanf'
[15:34:43]           /workspace/destdir/lib/libglib-2.0.so: undefined reference to `perror'
[15:34:43]           /workspace/destdir/lib/libcairo.so: undefined reference to `hypot'
[15:34:43]           /workspace/destdir/lib/libglib-2.0.so: undefined reference to `strtod'
[15:34:43]           /workspace/destdir/lib/libxml2.so: undefined reference to `dlclose'
[15:34:43]           /workspace/destdir/lib/libgio-2.0.so: undefined reference to `utimes'
[...]

I think the solution is to create the symlink

ln -sv libc.so ${sysroot}/urs/lib/libc.musl-$(musl_arch).so.1

after https://github.com/JuliaPackaging/Yggdrasil/blob/beb4ee8102255237abd5c84e5da25651ccc6b00e/0_RootFS/gcc_common.jl#L701. I'm opening the issue as a reminder, before I get to rebuild all Musl GCCs, sigh.

This has been fixed in this package by #192 but we still need to add the symlink directly in the compiler shards, so the we can remove the hot-fix from here.

Side note: I've been trying to craft a simple example to reproduce the error, to no avail. @haampie provided this similar reproducer (create a library with a soname which doesn't exist, trying to link to it fails, reporting an undefined reference error):

cc -c first.c
cc -shared -Wl,-soname,libdifferensoname.so -o libfirst.so first.o
cc -c second.c
cc -shared -Wl,-rpath,/tmp/tmp.YNOMudfZqn -Wl,-soname,libsecond.so -o libsecond.so second.o -L. -lfirst
cc -c third.c
cc -o main -Wl,-rpath,/tmp/tmp.YNOMudfZqn third.o -L. -lsecond
/usr/bin/ld: warning: libdifferensoname.so, needed by ./libsecond.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: ./libsecond.so: undefined reference to `first'
collect2: error: ld returned 1 exit status
make: *** [Makefile:19: main] Error 1

However I tried to adapt to our case (any simple C program would link to a non-existing libc) but couldn't make the linker fail 😕