[yocto] yocto sumo - upgrading gcc from 7.3 to 8.3 fails - C compiler cannot create executables

Eric Grunt gruntblue at gmail.com
Mon May 6 09:27:47 PDT 2019


Hi,

I tried to upgrade gcc from 7.3 to 8.3 by copying
gcc directory from https://github.com/openembedded/openembedded-core.git
(openembedded-core/meta/recipes-devtools/gcc)
to meta-custom-layer/recipes-gcc,
replacing requires to recipes-devtools/gcc/*inc in all bb files in there,
eg
require recipes-devtools/gcc/gcc-${PV}.inc/require becomes
require gcc-${PV}.inc,

changing gcc and sdk Version in local.conf to 8.%

GCCVERSION = "8.%"
SDKGCCVERSION = "8.%"

and by removing gcc-initial dependency from glibc.

diff --git a/sources/poky/meta/recipes-core/glibc/glibc-initial.inc
b/sources/poky/meta/recipes-core/glibc/glibc-initial.inc
index b86e2fb..4df63ae 100644
--- a/sources/poky/meta/recipes-core/glibc/glibc-initial.inc
+++ b/sources/poky/meta/recipes-core/glibc/glibc-initial.inc
@@ -1,4 +1,4 @@
-DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc-initial
libgcc-initial"
+DEPENDS = "linux-libc-headers virtual/${TARGET_PREFIX}gcc libgcc-initial"
 PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"

 PACKAGES = ""
diff --git a/sources/poky/meta/recipes-core/glibc/glibc.inc
b/sources/poky/meta/recipes-core/glibc/glibc.inc
index ce1222b..69b15ec 100644
--- a/sources/poky/meta/recipes-core/glibc/glibc.inc
+++ b/sources/poky/meta/recipes-core/glibc/glibc.inc
@@ -32,7 +32,7 @@ siteconfig_do_siteconfig_gencache_prepend = " \
 "

 # nptl needs unwind support in gcc, which can't be built without glibc.
-DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial libgcc-initial
linux-libc-headers virtual/${TARGET_PREFIX}libc-initial"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc libgcc-initial
linux-libc-headers virtual/${TARGET_PREFIX}libc-initial"
 # nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this
 #RDEPENDS_${PN} += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}"


After that, bitbake core-image-minimal fails at do_populate_sysroot
step for glibc_2.27:

| DEBUG: Executing shell function do_siteconfig_gencache
| configure: WARNING: unrecognized options: --disable-silent-rules,
--disable-dependency-tracking, --with-libtool-sysroot
| configure: creating cache glibc_cache
| checking for arm-poky-linux-gnueabi-gcc...
arm-poky-linux-gnueabi-gcc  -march=armv7ve -marm -mfpu=neon
-mfloat-abi=hard -mcpu=cortex-a7
--sysroot=/home/yocto/sigma/yocto-sumo/build/tmp_dev/work/cortexa7hf-neon-poky-linux-gnueabi/glibc/2.27-r0/recipe-sysroot
| checking whether the C compiler works... no
| configure: error: in
`/home/yocto/sigma/yocto-sumo/build/tmp_dev/work/cortexa7hf-neon-poky-linux-gnueabi/glibc/2.27-r0/site_config_imx6ul-var-dart':
| configure: error: C compiler cannot create executables
| See `config.log' for more details
| WARNING: exit code 77 from a shell command.
| DEBUG: Python function siteconfig_do_siteconfig finished
| DEBUG: Python function do_siteconfig finished
| DEBUG: Python function sstate_task_postfunc finished
| ERROR: Function failed: do_siteconfig_gencache

Do I have to perform something additional to be able to use gcc 8.3?


More information about the yocto mailing list