diff options
author | Ming Liu <ming.liu@toradex.com> | 2020-12-06 17:25:06 +0100 |
---|---|---|
committer | Ming Liu <ming.liu@toradex.com> | 2020-12-06 17:30:15 +0100 |
commit | be8f831ce0728062bacc686f2ab9178e8c53031f (patch) | |
tree | bf404b5e908e07d2e5c9ebf46f905219c4f9ea74 /recipes-bsp | |
parent | 4087b01cd5c70f4656cdff26a4e7d7ecc73bf41f (diff) |
imx-boot: fix a build issue
The following build errors was observed on ubuntu 16.04:
| ./mkimage_uboot -E -p 0x3000 -f u-boot.its u-boot.itb
| ./mkimage_uboot: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
or:
| ./mkimage_uboot: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: version `OPENSSL_1_1_1' not found (required by ./mkimage_uboot)
the issue is caused by OE builds native tools with a relative runpath:
$ aarch64-tdx-linux-objdump -p iMX8M/mkimage_uboot | egrep 'RPATH|RUNPATH'
RUNPATH $ORIGIN/../lib:$ORIGIN/../../lib
when mkimage_uboot is copied from ${STAGING_BINDIR_NATIVE} to ${S}, the
'$ORIGIN/../lib:$ORIGIN/../../lib' directories dont exist and ld hence
fall back to load libssl.so.1.1/libcrypto.so.1.1 from host system.
It could be fixed by creating a symbolic link in source to
${STAGING_BINDIR_NATIVE}/mkimage instead of copying it.
Related-to: ELB-3394
Signed-off-by: Ming Liu <ming.liu@toradex.com>
Diffstat (limited to 'recipes-bsp')
-rw-r--r-- | recipes-bsp/imx-mkimage/imx-boot_%.bbappend | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/recipes-bsp/imx-mkimage/imx-boot_%.bbappend b/recipes-bsp/imx-mkimage/imx-boot_%.bbappend new file mode 100644 index 0000000..d137231 --- /dev/null +++ b/recipes-bsp/imx-mkimage/imx-boot_%.bbappend @@ -0,0 +1,5 @@ +compile_mx8m_append() { + # Create symbolic link rather than copying mkimage_uboot + rm -rf ${BOOT_STAGING}/mkimage_uboot + lnr ${STAGING_DIR_NATIVE}/${bindir}/mkimage ${BOOT_STAGING}/mkimage_uboot +} |