From effd4ba4c23cbf53b01116b5cc81d6a29ca3b1a6 Mon Sep 17 00:00:00 2001 From: Deepesh Varatharajan Date: Mon, 13 Jan 2025 04:08:07 -0800 Subject: [PATCH] rust: Fix for duplicate libstd.so During the Rust build process, multiple copies of libstd-*.so are generated, as Rust copies the required files from the stage2 build artifacts to the target image directory. When these build binaries are copied to the image, Yocto's do_package step encounters an error. To resolve this, the redundant libstd-*.so files are removed during the do_install step. ----------------------------------------------------------------------------------------------- ERROR: rust-1.81.0-r0 do_package: rust: Multiple shlib providers for libstd-20c3de2d9292cd03.so:.. .... ----------------------------------------------------------------------------------------------- Multiple copies of libstd-*.so are generated during the Rust build process. The redundant files are removed during the do_install step. Signed-off-by: Deepesh Varatharajan Signed-off-by: Richard Purdie --- meta/recipes-devtools/rust/rust_1.80.1.bb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/recipes-devtools/rust/rust_1.80.1.bb b/meta/recipes-devtools/rust/rust_1.80.1.bb index eae1f28bb8d..b5835084566 100644 --- a/meta/recipes-devtools/rust/rust_1.80.1.bb +++ b/meta/recipes-devtools/rust/rust_1.80.1.bb @@ -271,6 +271,7 @@ rust_do_install:class-nativesdk() { rm ${D}${libdir}/rustlib/uninstall.sh rm ${D}${libdir}/rustlib/install.log rm ${D}${libdir}/rustlib/manifest* + rm ${D}${libdir}/rustlib/${RUST_HOST_SYS}/lib/libstd*.so } EXTRA_TOOLS ?= "cargo-clippy clippy-driver rustfmt" @@ -294,6 +295,7 @@ rust_do_install:class-target() { rm ${D}${libdir}/rustlib/uninstall.sh rm ${D}${libdir}/rustlib/install.log rm ${D}${libdir}/rustlib/manifest* + rm ${D}${libdir}/rustlib/${RUST_HOST_SYS}/lib/libstd*.so } addtask do_update_snapshot after do_patch -- 2.47.2