Wind River Support Network

HomeDefectsLIN1021-6816
Fixed

LIN1021-6816 : The sstate for GCC cross compiler is not portable

Created: Nov 10, 2023    Updated: Jan 21, 2024
Resolved Date: Dec 14, 2023
Found In Version: 10.21.20.19
Severity: Standard
Applicable for: Wind River Linux LTS 21
Component/s: Build & Config

Description

When building the gcc crosscompiler on a machine that has libzstd installed, the cross compiler detects this and links towards this library. Then when the sstate object is being resused on a machine that does not have libzstd installed, the cross compiler is not usable because of this:

On machine with libzstd:
$ ldd cc1
...
libzstd.so.1 => /lib64/libzstd.so.1 (0x00007f0f0c5e0000)
libstdc+{+}.so.6 => /lib64/libstdc{+}+.so.6 (0x00007f0f0c24b000)
...

On machine without libzstd:
$ ldd cc1
...
libz.so.1 => /wrl21/build/mib-axm5612-standard_rootfs/./build/tmp-glibc/work/armv7at2-neon-wrs-linux-gnueabi/glibc/2.33-r0.xcs2/recipe-sysroot-native/usr/libexec/arm-wrs-linux-gnueabi/gcc/arm-wrs-linux-gnueabi/10.3.0/../../../../../lib/libz.so.1 (0x00007fe5cc14d000)
libzstd.so.1 => not found
libstdc+{+}.so.6 => /lib64/libstdc{+}+.so.6 (0x00007fe5cbe45000)
...

Steps to Reproduce

cd /repo/ru-build/build/mib-axm5612-standard_rootfs && wrlinux-x/setup.sh (https://setup.sh/) --accept-eula yes --dl-layers --machine qemuarm
source /repo/ru-build/build/mib-axm5612-standard_rootfs/environment-setup-x86_64-wrlinuxsdk-linux && source /repo/ru-build/build/mib-axm5612-standard_rootfs/oe-init-build-env build
bitbake-layers add-layer /repo/ru-build/xcs/meta-eri-ru-aas-bsp /repo/ru-build/xcs/meta-wr-xcs-custom /repo/ru-build/xcs/meta-xcs /repo/ru-build/xcs/meta-xcs-revisions /repo/ru-build/xcs/meta-xcs-signing /repo/ru-build/build/mib-axm5612-standard_rootfs/layers/wrlinux/wrlinux-kernel-dev

On machine with libzstd:
$ ldd cc1
...
libzstd.so.1 => /lib64/libzstd.so.1 (0x00007f0f0c5e0000)
libstdc+{+}.so.6 => /lib64/libstdc{+}+.so.6 (0x00007f0f0c24b000)
...

On machine without libzstd:
$ ldd cc1
...
libz.so.1 => /wrl21/build/mib-axm5612-standard_rootfs/./build/tmp-glibc/work/armv7at2-neon-wrs-linux-gnueabi/glibc/2.33-r0.xcs2/recipe-sysroot-native/usr/libexec/arm-wrs-linux-gnueabi/gcc/arm-wrs-linux-gnueabi/10.3.0/../../../../../lib/libz.so.1 (0x00007fe5cc14d000)
libzstd.so.1 => not found
libstdc+{+}.so.6 => /lib64/libstdc{+}+.so.6 (0x00007fe5cbe45000)
...

 
Live chat
Online