I am trying to follow the i.MX yocto project user guide to build image for i.mx8 mini evk .
However when I run bitbake command I get the following error :
All Yocto host packages will be installed.
The build was successful before the error occurred.
ubuntu uses 16.04.
python3 uses python3.6.0.
PIP uses 20.0.2.
Below are contents of build.log :
Loading cache...done.
Loaded 3287 entries from dependency cache.
Parsing recipes...done.
Parsing of 2440 .bb files complete (2438 cached, 2 parsed). 3289 targets, 213 skipped, 9 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
Build Configuration:
BB_VERSION = "1.36.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "ubuntu-16.04"
TARGET_SYS = "aarch64-poky-linux"
MACHINE = "imx8mmevk"
DISTRO = "fsl-imx-xwayland"
DISTRO_VERSION = "4.9.88-2.1.0_8mm_alpha"
TUNE_FEATURES = "aarch64"
TARGET_FPU = ""
meta
meta-poky = "HEAD:fdeecc901196bbccd7c5b1ea4268a2cf56764a62"
meta-oe
meta-multimedia = "HEAD:dacfa2b1920e285531bec55cd2f08743390aaf57"
meta-freescale = "HEAD:d6141ea291a1ac9ab8fb1dd1110d408f840fda57"
meta-freescale-3rdparty = "HEAD:62de01743c9233ea718de22991c47b73a78b4857"
meta-freescale-distro = "HEAD:0ec6d7e206705702b5b534611754de0787f92b72"
meta-bsp
meta-sdk = "HEAD:8898f51c96e0e79dd56690d797d309f013ec9f76"
meta-browser = "HEAD:d6f9aed41c73b75a97d71bff060b03a66ee087b1"
meta-gnome
meta-networking
meta-python
meta-filesystems = "HEAD:dacfa2b1920e285531bec55cd2f08743390aaf57"
meta-qt5 = "HEAD:cfe02f26de53e5c20e6f9555059cbaaf5ab9b22f"
Initialising tasks...done.
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
NOTE: Running task 2874 of 7712 (/home/yamamura/work/linux-imx8mm-alpha/sources/meta-fsl-bsp-release/imx/meta-bsp/recipes-graphics/opencv/opencv_3.4.1.bb:do_compile)
NOTE: recipe opencv-3.4.1+gitAUTOINC+6ffc48769a_ced5aa7606_a62e20676a_34e4206aef_fccf7cd6a4-r0: task do_compile: Started
NOTE: Running task 3221 of 7712 (/home/yamamura/work/linux-imx8mm-alpha/sources/poky/meta/recipes-devtools/python/python3-pycairo_1.10.0.bb:do_configure)
NOTE: recipe python3-pycairo-1.10.0-r2: task do_configure: Started
ERROR: python3-pycairo-1.10.0-r2 do_configure: Function failed: do_configure (log file is located at /home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/temp/log.do_configure.14264)
ERROR: Logfile of failure stored in: /home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/temp/log.do_configure.14264
Log data follows:
| DEBUG: Executing shell function do_configure
| Setting top to : /home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0
| Setting out to : /home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/build_directory
| Checking for 'gcc' (c compiler) : ok
| Checking for program python : /home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/recipe-sysroot-native/usr/bin/python3-native/python3
| python executable '/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/recipe-sysroot-native/usr/bin/python3-native/python3' different from sys.executable '/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/hosttools/python'
| Checking for python version : (3, 5, 3, 'final', 0)
| Checking for library python3.5 in LIBPATH_PYEMBED : ./options()
| ./configure()
| Traceback (most recent call last):
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Scripting.py", line 93, in waf_entry_point
| run_commands()
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Scripting.py", line 145, in run_commands
| run_command(cmd_name)
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Scripting.py", line 138, in run_command
| ctx.execute()
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Configure.py", line 124, in execute
| super(ConfigurationContext,self).execute()
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Context.py", line 87, in execute
| self.recurse([os.path.dirname(g_module.root_path)])
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Context.py", line 127, in recurse
| user_function(self)
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/wscript", line 29, in configure
| ctx.check_python_headers()
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Configure.py", line 217, in fun
| return f(*k,**kw)
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Tools/python.py", line 142, in check_python_headers
| result=conf.check(lib=name,uselib='PYEMBED',libpath=path,mandatory=False,msg='Checking for library %s in LIBPATH_PYEMBED'%name)
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Configure.py", line 217, in fun
| return f(*k,**kw)
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Tools/c_config.py", line 357, in check
| ret=self.run_c_code(*k,**kw)
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Configure.py", line 217, in fun
| return f(*k,**kw)
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Tools/c_config.py", line 435, in run_c_code
| bld.compile()
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Build.py", line 190, in compile
| self.store()
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Utils.py", line 300, in f
| ret=fun(*k,**kw)
| File "/home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/pycairo-1.10.0/.waf3-1.6.4-e3c1e08604b18a10567cfcd2d02eb6e6/waflib/Build.py", line 164, in store
| cPickle.dump(data,f)
| AttributeError: Can't pickle local object 'Context.__init__.<locals>.node_class'
| WARNING: exit code 2 from a shell command.
| ERROR: Function failed: do_configure (log file is located at /home/yamamura/work/linux-imx8mm-alpha/build-xwayland/tmp/work/aarch64-mx8mm-poky-linux/python3-pycairo/1.10.0-r2/temp/log.do_configure.14264)
NOTE: recipe python3-pycairo-1.10.0-r2: task do_configure: Failed
ERROR: Task (/home/yamamura/work/linux-imx8mm-alpha/sources/poky/meta/recipes-devtools/python/python3-pycairo_1.10.0.bb:do_configure) failed with exit code '1'
NOTE: recipe opencv-3.4.1+gitAUTOINC+6ffc48769a_ced5aa7606_a62e20676a_34e4206aef_fccf7cd6a4-r0: task do_compile: Succeeded
NOTE: Tasks Summary: Attempted 3222 tasks of which 3220 didn't need to be rerun and 1 failed.
Summary: 1 task failed:
/home/yamamura/work/linux-imx8mm-alpha/sources/poky/meta/recipes-devtools/python/python3-pycairo_1.10.0.bb:do_configure
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
what ubuntu version do you use? did you install all of Host packages as yocto user guide mentions?
Thank you for your reply.
All Yocto host packages will be installed.
The build was successful before the error occurred.
ubuntu uses 16.04.
did you build 4.9.88-2.1.0_8mm_alpha? I suggested that you use the official version from nxp website we have been tested on imx8MM:
Embedded Linux for i.MX Applications Processors | NXP
suggest to use the latest version 4.19.35 or 4.14.98
Thank you for your reply.
4.9.88-2.1.0_8mm_alpha has been built.
Let's build with the official version.