M4-native compile failed

I want to use Qt to create a UI, therefore I need to configure the toolchain for cross compiling.
I followed your tutorials for OpenEmbedded and Qt Creator to cross compile and all worked fine.
But now I get this message:

ERROR: Task (/media/phillip/Ext_Linux/oe-core/build/…/layers/openembedded-core/meta/recipes-devtools/m4/m4-native_1.4.18.bb:do_compile) failed with exit code ‘1’

How can I solve this?

Hi @PG03,

Please provide more information about:

  • Which BSP are you planning to use?
  • Which version of Qt are you planning to use?
  • You mentioned a “Colibri V1.1A”, is it the carrier board? If so, which model?
  • The compilation message error also provides a more detailed output, could you provide that? Please feel free to upload a text file with the logs.

Best regards,
André Curvello

I want to use Linux BSP 2.8.7
Qt 5 (but I can switch to an older version if necessary)
I use the Colibri Evaluation Board V3.2B

This is the whole output:

phillip@pop-os:/media/phillip/Ext_Linux/oe-core$ bitbake -k angstrom-qt5-x11-image
WARNING: /media/phillip/Ext_Linux/oe-core/build/../layers/openembedded-core/meta/lib/oe/maketype.py:99: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.9 it will stop working
  if not isinstance(obj, collections.Callable):

Loading cache: 100% |############################################| Time: 0:00:01
Loaded 3900 entries from dependency cache.
WARNING: No recipes available for:
  /media/phillip/Ext_Linux/oe-core/build/../layers/meta-freescale/dynamic-layers/browser-layer/recipes-browser/chromium/chromium-wayland_48.0.2548.0.bbappend
  /media/phillip/Ext_Linux/oe-core/build/../layers/meta-freescale/dynamic-layers/browser-layer/recipes-browser/chromium/chromium_52.0.2743.76.bbappend
  /media/phillip/Ext_Linux/oe-core/build/../layers/meta-toradex-tegra/recipes-graphics/wayland/weston_1.%.bbappend
  /media/phillip/Ext_Linux/oe-core/build/../layers/meta-toradex-tegra/jetson-tk1/recipes-graphics/xorg-xserver/xserver-xorg_1.17.2.bbappend
NOTE: Resolving any missing task queue dependencies

Build Configuration:
BB_VERSION           = "1.36.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "pop-20.04"
TARGET_SYS           = "arm-angstrom-linux-gnueabi"
MACHINE              = "colibri-imx7-emmc"
DISTRO               = "angstrom"
DISTRO_VERSION       = "v2017.12"
TUNE_FEATURES        = "arm armv7a vfp thumb neon callconvention-hard"
TARGET_FPU           = "hard"
meta-angstrom        = "HEAD:4318892e08ea9102d29bdd92af83539bea985e4b"
meta-toradex-nxp     = "HEAD:dcb75200b15086bcd69f7ff396da7caf413ffb93"
meta-freescale       = "HEAD:1d40ea34fc2c06af79fc59f6ea54f2e9335d61d6"
meta-freescale-3rdparty = "HEAD:9056f60d81abacc2d8ee0f83ef0f70dfeedc76c7"
meta-toradex-tegra   = "HEAD:16b6bd18785a7cc8d9024a071d3fbc968ff63e83"
meta-jetson-tk1      = "HEAD:b430756e711b6b29381c8467185f475f5a505f96"
meta-toradex-bsp-common = "HEAD:362865913ed40f6cadeaf9111cf83269dc111248"
meta-oe              
meta-filesystems     
meta-gnome           
meta-xfce            
meta-initramfs       
meta-networking      
meta-multimedia      
meta-python          = "HEAD:eae996301d9c097bcbeb8046f08041dc82bb62f8"
meta-lxde            = "HEAD:f436137fcc4ac700dc5c1b5e31e5b3c27568fc3e"
meta-browser         = "HEAD:75640e14e325479c076b6272b646be7a239c18aa"
meta-qt4             = "HEAD:e290738759ef3f39c9e079eaa9b606a62107e5ba"
meta-qt5             = "HEAD:180edd66444db330301f22266cac7d588fd48c6a"
meta-qt5-extra       = "HEAD:c16ba209a93c3e55f5aef07fbb1d584e228765b3"
meta-freescale-distro = "HEAD:51756d1c2058139c8a21f89b86cfd8007b71b7f0"
meta-toradex-demos   = "HEAD:c73893a3377ebb557b0fb41f75b26dff40da4442"
meta                 = "HEAD:3638cb32ba9ba32b4d498fc31ab7fdf82f0d2495"

Initialising tasks: 100% |#######################################| Time: 0:00:25
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: m4-native-1.4.18-r0 do_compile: oe_runmake failed
ERROR: m4-native-1.4.18-r0 do_compile: Function failed: do_compile (log file is located at /media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/temp/log.do_compile.4083)
ERROR: Logfile of failure stored in: /media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/temp/log.do_compile.4083
Log data follows:
| DEBUG: Executing shell function do_compile
| NOTE: make -j 8 infodir=/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/recipe-sysroot-native/usr/share/info
| make  all-recursive
| make[1]: Entering directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build'
| Making all in .
| make[2]: Entering directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build'
| make[2]: Nothing to be done for 'all-am'.
| make[2]: Leaving directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build'
| Making all in examples
| make[2]: Entering directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build/examples'
| make[2]: Nothing to be done for 'all'.
| make[2]: Leaving directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build/examples'
| Making all in lib
| make[2]: Entering directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build/lib'
| make  all-am
| make[3]: Entering directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build/lib'
| gcc   -I. -I../../m4-1.4.18/lib   -isystem/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/recipe-sysroot-native/usr/include  -isystem/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/recipe-sysroot-native/usr/include -O2 -pipe -c -o freadahead.o ../../m4-1.4.18/lib/freadahead.c
| gcc   -I. -I../../m4-1.4.18/lib   -isystem/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/recipe-sysroot-native/usr/include  -isystem/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/recipe-sysroot-native/usr/include -O2 -pipe -c -o fseeko.o ../../m4-1.4.18/lib/fseeko.c
| ../../m4-1.4.18/lib/freadahead.c: In function ‘freadahead’:
| ../../m4-1.4.18/lib/freadahead.c:92:3: error: #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."
|    92 |  #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread, ungetc on your system, then report this to bug-gnulib."
|       |   ^~~~~
| make[3]: *** [Makefile:1915: freadahead.o] Error 1
| make[3]: *** Waiting for unfinished jobs....
| ../../m4-1.4.18/lib/fseeko.c: In function ‘rpl_fseeko’:
| ../../m4-1.4.18/lib/fseeko.c:110:4: error: #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib."
|   110 |   #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib."
|       |    ^~~~~
| make[3]: *** [Makefile:1915: fseeko.o] Error 1
| make[3]: Leaving directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build/lib'
| make[2]: *** [Makefile:1674: all] Error 2
| make[2]: Leaving directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build/lib'
| make[1]: *** [Makefile:1572: all-recursive] Error 1
| make[1]: Leaving directory '/media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/build'
| make: *** [Makefile:1528: all] Error 2
| ERROR: oe_runmake failed
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /media/phillip/Ext_Linux/oe-core/build/tmp-glibc/work/x86_64-linux/m4-native/1.4.18-r0/temp/log.do_compile.4083)
ERROR: Task (/media/phillip/Ext_Linux/oe-core/build/../layers/openembedded-core/meta/recipes-devtools/m4/m4-native_1.4.18.bb:do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 2419 tasks of which 2418 didn't need to be rerun and 1 failed.
NOTE: Writing buildhistory

Summary: 1 task failed:
  /media/phillip/Ext_Linux/oe-core/build/../layers/openembedded-core/meta/recipes-devtools/m4/m4-native_1.4.18.bb:do_compile
Summary: There were 2 WARNING messages shown.
Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

Thank you for the answer.

Hi @PG03,

I haven’t asked, but which operating system are you using for your Yocto Build?

We had a similar issue reported here Ubuntu 18.10/glibc 2.28: Image build fails, and the issue, in the end, was that the user was using an unsupported O.S. (Ubuntu 18.10) for the build.

Please have a look at the Yocto supported distributions.

We still provide support for the BSP 2.8b7, but we strongly advise you to use the BSP 3.0.4 (or 3.0b4), which is our latest LTS BSP, and a supported Linux Distribution for the Yocto Build.

Best regards,
André Curvello

applying the following patch can solve the issue:
https://github.com/buildroot/buildroot/commit/c48f8a64626c60bd1b46804b7cf1a699ff53cdf3

cheers,
Andre

Thanks for the support, @andreluizeng.

Can you try this, @PG03?

Best regards,
André Curvello