[yocto] Problems building U-Boot for x86_64
Ferry Toth
ftoth at telfort.nl
Tue Aug 22 23:41:35 PDT 2017
I am having trouble building a specific U-Boot version with Yocto.
Outside of Yocto on 64 bit Ubuntu 17.04 with multilib it builds fine.
I am extending meta-intel-edison to build a 64 bit Poke Morty, with a
vanilla 64-bit kernel (4.12). This is working quite well.
My host is x86_64, the target is core2 with tune=core-64.
Without 64bit tune I can build U-Boot fine. With 64bit it can not link,
appearently because it needs lbgcc.a
I attempted to add multilib, but although that immediately exposed bugs
in other recipes but actually adds libgcc.a, it does that for the target
sysroot only.
And for some reason, U-Boot is built with the native gcc (x86_64-linux),
and multilib does not add libgcc.a to that sysroot.
So, how do I add multilib to -native sysroot, preferably only to -native
and not to the target, as the target has not further use for it?
Strangest thing is in u-boot.inc there is:
EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc
${TOOLCHAIN_OPTIONS}" V=1'
EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
But when I check my log file:
NOTE: make -j8 CROSS_COMPILE=x86_64-poky-linux- CC=x86_64-poky-linux-
gcc ......
So TARGET_PREFIX resolves to x86_64-poky-linux, but I think my target is
core2_64 (or something like that). Is that normal for U-Boot?
I am a little lost, so any help would be greatly appreciated!
Ferry
More information about the yocto
mailing list