All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] meta-arm-bsp: Update gem5 and switch to python3
@ 2020-05-01 13:46 Bertrand Marquis
  2020-05-06 15:56 ` [meta-arm] " Jon Mason
  0 siblings, 1 reply; 5+ messages in thread
From: Bertrand Marquis @ 2020-05-01 13:46 UTC (permalink / raw)
  To: meta-arm; +Cc: nd

This patch includes several fixes for gem5-aarch64
- Switch to a new version of gem5 supporting python3 and use python3 to
 build it.
 We use a version in develop branch of gem5 for now and we will have to
 switch to release 20 once it is released mid of may.
- Remove scons python2 recipes which were used before by gem5 as a
 workaround until gem5 was updated to support python3
- make gem5-aarch64-bootloader only compatible with gem5-aarch64
- remove unnecessary FILESEXTRAPATHS_prepend in gem5-aarch64-bootloader

Change-Id: Iad9af4f2e6073ef63a51c2c33a05ed3855dd8f08
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
---
 .../gem5/gem5-aarch64-bootloader.inc          |  3 +--
 .../gem5/gem5-aarch64-bootloader_git.bb       |  9 ++++----
 .../recipes-devtools/gem5/gem5-aarch64-dtb.bb |  5 -----
 .../gem5/gem5-aarch64-native_git.bb           |  6 ++++--
 .../recipes-devtools/gem5/gem5-native.inc     | 21 +++++++++----------
 meta-arm-bsp/recipes-devtools/python/README   |  4 ----
 .../python/python-scons-native_3.0.1.bb       |  8 -------
 .../python/python-scons_3.0.1.bb              | 21 -------------------
 8 files changed, 20 insertions(+), 57 deletions(-)
 delete mode 100644 meta-arm-bsp/recipes-devtools/python/README
 delete mode 100644 meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
 delete mode 100644 meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb

diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
index 72069ad..4c479f5 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
@@ -7,8 +7,7 @@ inherit deploy
 
 PROVIDES = "virtual/gem5-bootloader"
 
-COMPATIBLE_MACHINE ?= ""
-COMPATIBLE_MACHINE_gem5_arm64 = "gem5-arm64"
+COMPATIBLE_MACHINE = "gem5-arm64"
 
 # no configure step
 do_configure[noexec] = "1"
diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
index ffbc2da..dcf45fb 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
@@ -1,16 +1,17 @@
 # gem5 custom bootloader
 
-FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
-SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https"
-
 LIC_FILES_CHKSUM = "file://COPYING;md5=2d9514d69d8abf88b6e9125e759bf0ab \
                     file://LICENSE;md5=a585e2893cee63d16a1d8bc16c6297ec"
 
+# The recipe is currently using a version in the development branch of gem5
+# until version 20 with python3 support is released
+SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https;branch=develop"
+
 PV = "git${SRCPV}"
 
 S = "${WORKDIR}/git"
 
-SRCREV = "bcf041f257623e5c9e77d35b7531bae59edc0423"
+SRCREV = "0c7f131ed2ce008e8d17aa8530f790f934242713"
 
 BPN = "gem5-aarch64-bootloader"
 
diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
index 362a8e0..b97a1b2 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
@@ -9,14 +9,9 @@ DEPENDS = "gem5-aarch64-native"
 do_configure[noexec] = "1"
 
 do_compile() {
-    # Gem5 is requiring a non zero size disk even though it is not required to
-    # generate the dtb. Use /proc/version as disk file.
-
     # generate a dtb using gem5
     gem5.opt \
         ${STAGING_DATADIR_NATIVE}/gem5/configs/example/arm/baremetal.py \
-        --disk-image /proc/version \
-        --kernel "" \
         --dtb-gen
 
     if [ ! -f m5out/system.dtb ]; then
diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
index 9c77121..1dc91ab 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
@@ -3,13 +3,15 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=2d9514d69d8abf88b6e9125e759bf0ab \
                     file://LICENSE;md5=a585e2893cee63d16a1d8bc16c6297ec"
 
-SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https"
+# The recipe is currently using a version in the development branch of gem5
+# until version 20 with python3 support is released
+SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https;branch=develop"
 
 PV = "git${SRCPV}"
 
 S = "${WORKDIR}/git"
 
-SRCREV = "bcf041f257623e5c9e77d35b7531bae59edc0423"
+SRCREV = "0c7f131ed2ce008e8d17aa8530f790f934242713"
 
 BPN = "gem5-aarch64-native"
 
diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc b/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
index 4b02d13..429e18c 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
@@ -11,30 +11,29 @@ GEM5_BUILD_CONFIGS ?= "build/X86/gem5.opt"
 
 # Scons build arguments
 GEM5_SCONS_ARGS ?= "-j ${BB_NUMBER_THREADS} CC=${BUILD_CC} CXX=${BUILD_CXX} \
-    AS=${BUILD_AS} AR=${BUILD_AR} ${GEM5_BUILD_CONFIGS}"
+    AS=${BUILD_AS} AR=${BUILD_AR} ${GEM5_BUILD_CONFIGS} \
+    PYTHON_CONFIG=python3-config"
 
 # Default profile to run
 GEM5_RUN_PROFILE ?= "configs/example/fs.py"
 
-# We are building a native package and we need to use python
-inherit native pythonnative
+# We are building a native package and we need to use scons
+inherit native scons
 
 # the build is using several tools:
-# python: scons and six
+# python3: scons and six
 # google protobuf
 # pkgconfig
 # hdf5
-DEPENDS += "python-native python-scons-native python-six-native \
-    protobuf-native hdf5-native pkgconfig-native boost-native libpng-native"
+DEPENDS += "python3-six-native protobuf-native hdf5-native pkgconfig-native \
+    boost-native libpng-native"
 
-do_configure[noexec] = "1"
+EXTRA_OESCONS = "${GEM5_SCONS_ARGS}"
 
-do_compile() {
+do_compile_prepend() {
     # We need to use the proper native libraries when executing
     # compiled applications
     export LD_LIBRARY_PATH="${STAGING_LIBDIR_NATIVE}"
-
-    scons ${GEM5_SCONS_ARGS}
 }
 
 do_install() {
@@ -58,5 +57,5 @@ EOF
 
 FILES_${PN} = "${datadir}/gem5/* ${bindir}/*"
 INSANE_SKIP_${PN} += "already-stripped"
-RDEPENDS_${PN} += "python-native hdf5-native protobuf-native libpng-native"
+RDEPENDS_${PN} += "python3-native hdf5-native protobuf-native libpng-native"
 
diff --git a/meta-arm-bsp/recipes-devtools/python/README b/meta-arm-bsp/recipes-devtools/python/README
deleted file mode 100644
index b80c757..0000000
--- a/meta-arm-bsp/recipes-devtools/python/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This is added for Gem5 compilation with Zeus as it has been removed from
-OpenEmbedded (and Gem5 needs scons to be compiled).
-
-This should be removed once Gem5 supports properly python3.
diff --git a/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb b/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
deleted file mode 100644
index 68b63c9..0000000
--- a/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require python-scons_${PV}.bb
-inherit native pythonnative
-DEPENDS = "python-native"
-RDEPENDS_${PN} = ""
-
-do_install_append() {
-    create_wrapper ${D}${bindir}/scons SCONS_LIB_DIR='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' PYTHONNOUSERSITE='1'
-}
diff --git a/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb b/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb
deleted file mode 100644
index d5084b2..0000000
--- a/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "Software Construction tool (make/autotools replacement)"
-SECTION = "devel/python"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=46ddf66004e5be5566367cb525a66fc6"
-
-SRC_URI[md5sum] = "b6a292e251b34b82c203b56cfa3968b3"
-SRC_URI[sha256sum] = "24475e38d39c19683bc88054524df018fe6949d70fbd4c69e298d39a0269f173"
-
-UPSTREAM_CHECK_URI = "http://scons.org/pages/download.html"
-UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} = "\
-  python-fcntl \
-  python-io \
-  python-json \
-  python-subprocess \
-  python-shell \
-  python-pprint \
-  "
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [meta-arm] [PATCH] meta-arm-bsp: Update gem5 and switch to python3
  2020-05-01 13:46 [PATCH] meta-arm-bsp: Update gem5 and switch to python3 Bertrand Marquis
@ 2020-05-06 15:56 ` Jon Mason
  2020-05-06 16:02   ` Bertrand Marquis
  0 siblings, 1 reply; 5+ messages in thread
From: Jon Mason @ 2020-05-06 15:56 UTC (permalink / raw)
  To: meta-arm

On Fri, May 01, 2020 at 02:46:50PM +0100, Bertrand Marquis wrote:
> This patch includes several fixes for gem5-aarch64
> - Switch to a new version of gem5 supporting python3 and use python3 to
>  build it.
>  We use a version in develop branch of gem5 for now and we will have to
>  switch to release 20 once it is released mid of may.
> - Remove scons python2 recipes which were used before by gem5 as a
>  workaround until gem5 was updated to support python3
> - make gem5-aarch64-bootloader only compatible with gem5-aarch64
> - remove unnecessary FILESEXTRAPATHS_prepend in gem5-aarch64-bootloader



I'm seeing an error when compiling this, which I wasn't seeing before.



ERROR: gem5-aarch64-native-gitAUTOINC+0c7f131ed2-r0 do_compile: scons build execution failed.
ERROR: gem5-aarch64-native-gitAUTOINC+0c7f131ed2-r0 do_compile: Execution of '/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/run.do_compile.5490' failed with exit code 1:
scons: Reading SConscript files ...
TypeError: object of type 'map' has no len():
  File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
    compareVersions(gcc_version, '8.1') < 0:
  File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
    if len(v1) < len(v2): return -1
WARNING: exit code 1 from a shell command.

ERROR: Logfile of failure stored in: /home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/log.do_compile.5490
Log data follows:
| DEBUG: Executing shell function do_compile
| scons: Reading SConscript files ...
| TypeError: object of type 'map' has no len():
|   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
|     compareVersions(gcc_version, '8.1') < 0:
|   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
|     if len(v1) < len(v2): return -1
| ERROR: scons build execution failed.
| WARNING: exit code 1 from a shell command.
| ERROR: Execution of '/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/run.do_compile.5490' failed with exit code 1:
| scons: Reading SConscript files ...
| TypeError: object of type 'map' has no len():
|   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
|     compareVersions(gcc_version, '8.1') < 0:
|   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
|     if len(v1) < len(v2): return -1
| WARNING: exit code 1 from a shell command.
|
ERROR: Task (/home/jdm/yocto/meta-arm/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb:do_compile) failed with exit code '1'









> 
> Change-Id: Iad9af4f2e6073ef63a51c2c33a05ed3855dd8f08
> Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com>
> ---
>  .../gem5/gem5-aarch64-bootloader.inc          |  3 +--
>  .../gem5/gem5-aarch64-bootloader_git.bb       |  9 ++++----
>  .../recipes-devtools/gem5/gem5-aarch64-dtb.bb |  5 -----
>  .../gem5/gem5-aarch64-native_git.bb           |  6 ++++--
>  .../recipes-devtools/gem5/gem5-native.inc     | 21 +++++++++----------
>  meta-arm-bsp/recipes-devtools/python/README   |  4 ----
>  .../python/python-scons-native_3.0.1.bb       |  8 -------
>  .../python/python-scons_3.0.1.bb              | 21 -------------------
>  8 files changed, 20 insertions(+), 57 deletions(-)
>  delete mode 100644 meta-arm-bsp/recipes-devtools/python/README
>  delete mode 100644 meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
>  delete mode 100644 meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb
> 
> diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
> index 72069ad..4c479f5 100644
> --- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
> +++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
> @@ -7,8 +7,7 @@ inherit deploy
>  
>  PROVIDES = "virtual/gem5-bootloader"
>  
> -COMPATIBLE_MACHINE ?= ""
> -COMPATIBLE_MACHINE_gem5_arm64 = "gem5-arm64"
> +COMPATIBLE_MACHINE = "gem5-arm64"
>  
>  # no configure step
>  do_configure[noexec] = "1"
> diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
> index ffbc2da..dcf45fb 100644
> --- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
> +++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
> @@ -1,16 +1,17 @@
>  # gem5 custom bootloader
>  
> -FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
> -SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https"
> -
>  LIC_FILES_CHKSUM = "file://COPYING;md5=2d9514d69d8abf88b6e9125e759bf0ab \
>                      file://LICENSE;md5=a585e2893cee63d16a1d8bc16c6297ec"
>  
> +# The recipe is currently using a version in the development branch of gem5
> +# until version 20 with python3 support is released
> +SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https;branch=develop"
> +
>  PV = "git${SRCPV}"
>  
>  S = "${WORKDIR}/git"
>  
> -SRCREV = "bcf041f257623e5c9e77d35b7531bae59edc0423"
> +SRCREV = "0c7f131ed2ce008e8d17aa8530f790f934242713"
>  
>  BPN = "gem5-aarch64-bootloader"
>  
> diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
> index 362a8e0..b97a1b2 100644
> --- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
> +++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
> @@ -9,14 +9,9 @@ DEPENDS = "gem5-aarch64-native"
>  do_configure[noexec] = "1"
>  
>  do_compile() {
> -    # Gem5 is requiring a non zero size disk even though it is not required to
> -    # generate the dtb. Use /proc/version as disk file.
> -
>      # generate a dtb using gem5
>      gem5.opt \
>          ${STAGING_DATADIR_NATIVE}/gem5/configs/example/arm/baremetal.py \
> -        --disk-image /proc/version \
> -        --kernel "" \
>          --dtb-gen
>  
>      if [ ! -f m5out/system.dtb ]; then
> diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
> index 9c77121..1dc91ab 100644
> --- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
> +++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
> @@ -3,13 +3,15 @@
>  LIC_FILES_CHKSUM = "file://COPYING;md5=2d9514d69d8abf88b6e9125e759bf0ab \
>                      file://LICENSE;md5=a585e2893cee63d16a1d8bc16c6297ec"
>  
> -SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https"
> +# The recipe is currently using a version in the development branch of gem5
> +# until version 20 with python3 support is released
> +SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https;branch=develop"
>  
>  PV = "git${SRCPV}"
>  
>  S = "${WORKDIR}/git"
>  
> -SRCREV = "bcf041f257623e5c9e77d35b7531bae59edc0423"
> +SRCREV = "0c7f131ed2ce008e8d17aa8530f790f934242713"
>  
>  BPN = "gem5-aarch64-native"
>  
> diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc b/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
> index 4b02d13..429e18c 100644
> --- a/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
> +++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
> @@ -11,30 +11,29 @@ GEM5_BUILD_CONFIGS ?= "build/X86/gem5.opt"
>  
>  # Scons build arguments
>  GEM5_SCONS_ARGS ?= "-j ${BB_NUMBER_THREADS} CC=${BUILD_CC} CXX=${BUILD_CXX} \
> -    AS=${BUILD_AS} AR=${BUILD_AR} ${GEM5_BUILD_CONFIGS}"
> +    AS=${BUILD_AS} AR=${BUILD_AR} ${GEM5_BUILD_CONFIGS} \
> +    PYTHON_CONFIG=python3-config"
>  
>  # Default profile to run
>  GEM5_RUN_PROFILE ?= "configs/example/fs.py"
>  
> -# We are building a native package and we need to use python
> -inherit native pythonnative
> +# We are building a native package and we need to use scons
> +inherit native scons
>  
>  # the build is using several tools:
> -# python: scons and six
> +# python3: scons and six
>  # google protobuf
>  # pkgconfig
>  # hdf5
> -DEPENDS += "python-native python-scons-native python-six-native \
> -    protobuf-native hdf5-native pkgconfig-native boost-native libpng-native"
> +DEPENDS += "python3-six-native protobuf-native hdf5-native pkgconfig-native \
> +    boost-native libpng-native"
>  
> -do_configure[noexec] = "1"
> +EXTRA_OESCONS = "${GEM5_SCONS_ARGS}"
>  
> -do_compile() {
> +do_compile_prepend() {
>      # We need to use the proper native libraries when executing
>      # compiled applications
>      export LD_LIBRARY_PATH="${STAGING_LIBDIR_NATIVE}"
> -
> -    scons ${GEM5_SCONS_ARGS}
>  }
>  
>  do_install() {
> @@ -58,5 +57,5 @@ EOF
>  
>  FILES_${PN} = "${datadir}/gem5/* ${bindir}/*"
>  INSANE_SKIP_${PN} += "already-stripped"
> -RDEPENDS_${PN} += "python-native hdf5-native protobuf-native libpng-native"
> +RDEPENDS_${PN} += "python3-native hdf5-native protobuf-native libpng-native"
>  
> diff --git a/meta-arm-bsp/recipes-devtools/python/README b/meta-arm-bsp/recipes-devtools/python/README
> deleted file mode 100644
> index b80c757..0000000
> --- a/meta-arm-bsp/recipes-devtools/python/README
> +++ /dev/null
> @@ -1,4 +0,0 @@
> -This is added for Gem5 compilation with Zeus as it has been removed from
> -OpenEmbedded (and Gem5 needs scons to be compiled).
> -
> -This should be removed once Gem5 supports properly python3.
> diff --git a/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb b/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
> deleted file mode 100644
> index 68b63c9..0000000
> --- a/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
> +++ /dev/null
> @@ -1,8 +0,0 @@
> -require python-scons_${PV}.bb
> -inherit native pythonnative
> -DEPENDS = "python-native"
> -RDEPENDS_${PN} = ""
> -
> -do_install_append() {
> -    create_wrapper ${D}${bindir}/scons SCONS_LIB_DIR='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' PYTHONNOUSERSITE='1'
> -}
> diff --git a/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb b/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb
> deleted file mode 100644
> index d5084b2..0000000
> --- a/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb
> +++ /dev/null
> @@ -1,21 +0,0 @@
> -SUMMARY = "Software Construction tool (make/autotools replacement)"
> -SECTION = "devel/python"
> -LICENSE = "MIT"
> -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=46ddf66004e5be5566367cb525a66fc6"
> -
> -SRC_URI[md5sum] = "b6a292e251b34b82c203b56cfa3968b3"
> -SRC_URI[sha256sum] = "24475e38d39c19683bc88054524df018fe6949d70fbd4c69e298d39a0269f173"
> -
> -UPSTREAM_CHECK_URI = "http://scons.org/pages/download.html"
> -UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
> -
> -inherit pypi setuptools
> -
> -RDEPENDS_${PN} = "\
> -  python-fcntl \
> -  python-io \
> -  python-json \
> -  python-subprocess \
> -  python-shell \
> -  python-pprint \
> -  "
> -- 
> 2.17.1
> 

> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [meta-arm] [PATCH] meta-arm-bsp: Update gem5 and switch to python3
  2020-05-06 15:56 ` [meta-arm] " Jon Mason
@ 2020-05-06 16:02   ` Bertrand Marquis
  2020-05-06 16:38     ` Bertrand Marquis
  0 siblings, 1 reply; 5+ messages in thread
From: Bertrand Marquis @ 2020-05-06 16:02 UTC (permalink / raw)
  To: meta-arm; +Cc: nd

[-- Attachment #1: Type: text/plain, Size: 11503 bytes --]



On 6 May 2020, at 16:56, Jon Mason via lists.yoctoproject.org<http://lists.yoctoproject.org> <jdmason=kudzu.us@lists.yoctoproject.org<mailto:jdmason=kudzu.us@lists.yoctoproject.org>> wrote:

On Fri, May 01, 2020 at 02:46:50PM +0100, Bertrand Marquis wrote:
This patch includes several fixes for gem5-aarch64
- Switch to a new version of gem5 supporting python3 and use python3 to
build it.
We use a version in develop branch of gem5 for now and we will have to
switch to release 20 once it is released mid of may.
- Remove scons python2 recipes which were used before by gem5 as a
workaround until gem5 was updated to support python3
- make gem5-aarch64-bootloader only compatible with gem5-aarch64
- remove unnecessary FILESEXTRAPATHS_prepend in gem5-aarch64-bootloader



I'm seeing an error when compiling this, which I wasn't seeing before.



ERROR: gem5-aarch64-native-gitAUTOINC+0c7f131ed2-r0 do_compile: scons build execution failed.
ERROR: gem5-aarch64-native-gitAUTOINC+0c7f131ed2-r0 do_compile: Execution of '/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/run.do_compile.5490' failed with exit code 1:
scons: Reading SConscript files ...
TypeError: object of type 'map' has no len():
 File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
   compareVersions(gcc_version, '8.1') < 0:
 File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
   if len(v1) < len(v2): return -1
WARNING: exit code 1 from a shell command.

ERROR: Logfile of failure stored in: /home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/log.do_compile.5490
Log data follows:
| DEBUG: Executing shell function do_compile
| scons: Reading SConscript files ...
| TypeError: object of type 'map' has no len():
|   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
|     compareVersions(gcc_version, '8.1') < 0:
|   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
|     if len(v1) < len(v2): return -1
| ERROR: scons build execution failed.
| WARNING: exit code 1 from a shell command.
| ERROR: Execution of '/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/run.do_compile.5490' failed with exit code 1:
| scons: Reading SConscript files ...
| TypeError: object of type 'map' has no len():
|   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
|     compareVersions(gcc_version, '8.1') < 0:
|   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
|     if len(v1) < len(v2): return -1
| WARNING: exit code 1 from a shell command.
|
ERROR: Task (/home/jdm/yocto/meta-arm/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb:do_compile) failed with exit code ‘1’



Could you provide more information on your testing environment ?
Which version of Yocto, what configuration ?

This was compiling properly last time I tried it with Zeus.

Bertrand










Change-Id: Iad9af4f2e6073ef63a51c2c33a05ed3855dd8f08
Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com<mailto:bertrand.marquis@arm.com>>
---
.../gem5/gem5-aarch64-bootloader.inc          |  3 +--
.../gem5/gem5-aarch64-bootloader_git.bb       |  9 ++++----
.../recipes-devtools/gem5/gem5-aarch64-dtb.bb |  5 -----
.../gem5/gem5-aarch64-native_git.bb           |  6 ++++--
.../recipes-devtools/gem5/gem5-native.inc     | 21 +++++++++----------
meta-arm-bsp/recipes-devtools/python/README   |  4 ----
.../python/python-scons-native_3.0.1.bb       |  8 -------
.../python/python-scons_3.0.1.bb              | 21 -------------------
8 files changed, 20 insertions(+), 57 deletions(-)
delete mode 100644 meta-arm-bsp/recipes-devtools/python/README
delete mode 100644 meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
delete mode 100644 meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb

diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
index 72069ad..4c479f5 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader.inc
@@ -7,8 +7,7 @@ inherit deploy

PROVIDES = "virtual/gem5-bootloader"

-COMPATIBLE_MACHINE ?= ""
-COMPATIBLE_MACHINE_gem5_arm64 = "gem5-arm64"
+COMPATIBLE_MACHINE = "gem5-arm64"

# no configure step
do_configure[noexec] = "1"
diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
index ffbc2da..dcf45fb 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-bootloader_git.bb
@@ -1,16 +1,17 @@
# gem5 custom bootloader

-FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
-SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https"
-
LIC_FILES_CHKSUM = "file://COPYING;md5=2d9514d69d8abf88b6e9125e759bf0ab \
                    file://LICENSE;md5=a585e2893cee63d16a1d8bc16c6297ec"

+# The recipe is currently using a version in the development branch of gem5
+# until version 20 with python3 support is released
+SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https;branch=develop"
+
PV = "git${SRCPV}"

S = "${WORKDIR}/git"

-SRCREV = "bcf041f257623e5c9e77d35b7531bae59edc0423"
+SRCREV = "0c7f131ed2ce008e8d17aa8530f790f934242713"

BPN = "gem5-aarch64-bootloader"

diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
index 362a8e0..b97a1b2 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-dtb.bb
@@ -9,14 +9,9 @@ DEPENDS = "gem5-aarch64-native"
do_configure[noexec] = "1"

do_compile() {
-    # Gem5 is requiring a non zero size disk even though it is not required to
-    # generate the dtb. Use /proc/version as disk file.
-
    # generate a dtb using gem5
    gem5.opt \
        ${STAGING_DATADIR_NATIVE}/gem5/configs/example/arm/baremetal.py \
-        --disk-image /proc/version \
-        --kernel "" \
        --dtb-gen

    if [ ! -f m5out/system.dtb ]; then
diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
index 9c77121..1dc91ab 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb
@@ -3,13 +3,15 @@
LIC_FILES_CHKSUM = "file://COPYING;md5=2d9514d69d8abf88b6e9125e759bf0ab \
                    file://LICENSE;md5=a585e2893cee63d16a1d8bc16c6297ec"

-SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https"
+# The recipe is currently using a version in the development branch of gem5
+# until version 20 with python3 support is released
+SRC_URI = "git://gem5.googlesource.com/public/gem5;protocol=https;branch=develop"

PV = "git${SRCPV}"

S = "${WORKDIR}/git"

-SRCREV = "bcf041f257623e5c9e77d35b7531bae59edc0423"
+SRCREV = "0c7f131ed2ce008e8d17aa8530f790f934242713"

BPN = "gem5-aarch64-native"

diff --git a/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc b/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
index 4b02d13..429e18c 100644
--- a/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
+++ b/meta-arm-bsp/recipes-devtools/gem5/gem5-native.inc
@@ -11,30 +11,29 @@ GEM5_BUILD_CONFIGS ?= "build/X86/gem5.opt"

# Scons build arguments
GEM5_SCONS_ARGS ?= "-j ${BB_NUMBER_THREADS} CC=${BUILD_CC} CXX=${BUILD_CXX} \
-    AS=${BUILD_AS} AR=${BUILD_AR} ${GEM5_BUILD_CONFIGS}"
+    AS=${BUILD_AS} AR=${BUILD_AR} ${GEM5_BUILD_CONFIGS} \
+    PYTHON_CONFIG=python3-config"

# Default profile to run
GEM5_RUN_PROFILE ?= "configs/example/fs.py"

-# We are building a native package and we need to use python
-inherit native pythonnative
+# We are building a native package and we need to use scons
+inherit native scons

# the build is using several tools:
-# python: scons and six
+# python3: scons and six
# google protobuf
# pkgconfig
# hdf5
-DEPENDS += "python-native python-scons-native python-six-native \
-    protobuf-native hdf5-native pkgconfig-native boost-native libpng-native"
+DEPENDS += "python3-six-native protobuf-native hdf5-native pkgconfig-native \
+    boost-native libpng-native"

-do_configure[noexec] = "1"
+EXTRA_OESCONS = "${GEM5_SCONS_ARGS}"

-do_compile() {
+do_compile_prepend() {
    # We need to use the proper native libraries when executing
    # compiled applications
    export LD_LIBRARY_PATH="${STAGING_LIBDIR_NATIVE}"
-
-    scons ${GEM5_SCONS_ARGS}
}

do_install() {
@@ -58,5 +57,5 @@ EOF

FILES_${PN} = "${datadir}/gem5/* ${bindir}/*"
INSANE_SKIP_${PN} += "already-stripped"
-RDEPENDS_${PN} += "python-native hdf5-native protobuf-native libpng-native"
+RDEPENDS_${PN} += "python3-native hdf5-native protobuf-native libpng-native"

diff --git a/meta-arm-bsp/recipes-devtools/python/README b/meta-arm-bsp/recipes-devtools/python/README
deleted file mode 100644
index b80c757..0000000
--- a/meta-arm-bsp/recipes-devtools/python/README
+++ /dev/null
@@ -1,4 +0,0 @@
-This is added for Gem5 compilation with Zeus as it has been removed from
-OpenEmbedded (and Gem5 needs scons to be compiled).
-
-This should be removed once Gem5 supports properly python3.
diff --git a/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb b/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
deleted file mode 100644
index 68b63c9..0000000
--- a/meta-arm-bsp/recipes-devtools/python/python-scons-native_3.0.1.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require python-scons_${PV}.bb
-inherit native pythonnative
-DEPENDS = "python-native"
-RDEPENDS_${PN} = ""
-
-do_install_append() {
-    create_wrapper ${D}${bindir}/scons SCONS_LIB_DIR='${STAGING_DIR_HOST}/${PYTHON_SITEPACKAGES_DIR}' PYTHONNOUSERSITE='1'
-}
diff --git a/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb b/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb
deleted file mode 100644
index d5084b2..0000000
--- a/meta-arm-bsp/recipes-devtools/python/python-scons_3.0.1.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "Software Construction tool (make/autotools replacement)"
-SECTION = "devel/python"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=46ddf66004e5be5566367cb525a66fc6"
-
-SRC_URI[md5sum] = "b6a292e251b34b82c203b56cfa3968b3"
-SRC_URI[sha256sum] = "24475e38d39c19683bc88054524df018fe6949d70fbd4c69e298d39a0269f173"
-
-UPSTREAM_CHECK_URI = "http://scons.org/pages/download.html"
-UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar"
-
-inherit pypi setuptools
-
-RDEPENDS_${PN} = "\
-  python-fcntl \
-  python-io \
-  python-json \
-  python-subprocess \
-  python-shell \
-  python-pprint \
-  "
--
2.17.1







[-- Attachment #2: Type: text/html, Size: 48564 bytes --]

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [meta-arm] [PATCH] meta-arm-bsp: Update gem5 and switch to python3
  2020-05-06 16:02   ` Bertrand Marquis
@ 2020-05-06 16:38     ` Bertrand Marquis
  2020-05-07 19:33       ` Jon Mason
  0 siblings, 1 reply; 5+ messages in thread
From: Bertrand Marquis @ 2020-05-06 16:38 UTC (permalink / raw)
  To: meta-arm; +Cc: nd



> On 6 May 2020, at 17:02, Bertrand Marquis <bertrand.marquis@arm.com> wrote:
> 
> 
> 
>> On 6 May 2020, at 16:56, Jon Mason via lists.yoctoproject.org <jdmason=kudzu.us@lists.yoctoproject.org> wrote:
>> 
>> On Fri, May 01, 2020 at 02:46:50PM +0100, Bertrand Marquis wrote:
>>> This patch includes several fixes for gem5-aarch64
>>> - Switch to a new version of gem5 supporting python3 and use python3 to
>>> build it.
>>> We use a version in develop branch of gem5 for now and we will have to
>>> switch to release 20 once it is released mid of may.
>>> - Remove scons python2 recipes which were used before by gem5 as a
>>> workaround until gem5 was updated to support python3
>>> - make gem5-aarch64-bootloader only compatible with gem5-aarch64
>>> - remove unnecessary FILESEXTRAPATHS_prepend in gem5-aarch64-bootloader
>> 
>> 
>> 
>> I'm seeing an error when compiling this, which I wasn't seeing before.
>> 
>> 
>> 
>> ERROR: gem5-aarch64-native-gitAUTOINC+0c7f131ed2-r0 do_compile: scons build execution failed.
>> ERROR: gem5-aarch64-native-gitAUTOINC+0c7f131ed2-r0 do_compile: Execution of '/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/run.do_compile.5490' failed with exit code 1:
>> scons: Reading SConscript files ...
>> TypeError: object of type 'map' has no len():
>>  File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
>>    compareVersions(gcc_version, '8.1') < 0:
>>  File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
>>    if len(v1) < len(v2): return -1
>> WARNING: exit code 1 from a shell command.
>> 
>> ERROR: Logfile of failure stored in: /home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/log.do_compile.5490
>> Log data follows:
>> | DEBUG: Executing shell function do_compile
>> | scons: Reading SConscript files ...
>> | TypeError: object of type 'map' has no len():
>> |   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
>> |     compareVersions(gcc_version, '8.1') < 0:
>> |   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
>> |     if len(v1) < len(v2): return -1
>> | ERROR: scons build execution failed.
>> | WARNING: exit code 1 from a shell command.
>> | ERROR: Execution of '/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/run.do_compile.5490' failed with exit code 1:
>> | scons: Reading SConscript files ...
>> | TypeError: object of type 'map' has no len():
>> |   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
>> |     compareVersions(gcc_version, '8.1') < 0:
>> |   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
>> |     if len(v1) < len(v2): return -1
>> | WARNING: exit code 1 from a shell command.
>> |
>> ERROR: Task (/home/jdm/yocto/meta-arm/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb:do_compile) failed with exit code ‘1’
>> 
>> 
> 
> Could you provide more information on your testing environment ?
> Which version of Yocto, what configuration ?
> 
> This was compiling properly last time I tried it with Zeus.

To give more detail on my setup:

- meta-openembedded and poky version zeus up to date

- meta-arm with master status including everything you merged today

- bblayer.conf with the following layers:
poky/meta \
poky/meta-poky \
poky/meta-yocto-bsp \
meta-openembedded/meta-oe \
meta-openembedded/meta-python \
meta-arm/meta-arm \
meta-arm/meta-arm-bsp
- local.conf with:
MACHINE ?= "gem5-arm64”

- bitbake core-image-minimal

Could you give more information on how you generate your error because I could not reproduce it ?

Bertrand


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [meta-arm] [PATCH] meta-arm-bsp: Update gem5 and switch to python3
  2020-05-06 16:38     ` Bertrand Marquis
@ 2020-05-07 19:33       ` Jon Mason
  0 siblings, 0 replies; 5+ messages in thread
From: Jon Mason @ 2020-05-07 19:33 UTC (permalink / raw)
  To: meta-arm

On Wed, May 06, 2020 at 04:38:51PM +0000, Bertrand Marquis wrote:
> 
> 
> > On 6 May 2020, at 17:02, Bertrand Marquis <bertrand.marquis@arm.com> wrote:
> > 
> > 
> > 
> >> On 6 May 2020, at 16:56, Jon Mason via lists.yoctoproject.org <jdmason=kudzu.us@lists.yoctoproject.org> wrote:
> >> 
> >> On Fri, May 01, 2020 at 02:46:50PM +0100, Bertrand Marquis wrote:
> >>> This patch includes several fixes for gem5-aarch64
> >>> - Switch to a new version of gem5 supporting python3 and use python3 to
> >>> build it.
> >>> We use a version in develop branch of gem5 for now and we will have to
> >>> switch to release 20 once it is released mid of may.
> >>> - Remove scons python2 recipes which were used before by gem5 as a
> >>> workaround until gem5 was updated to support python3
> >>> - make gem5-aarch64-bootloader only compatible with gem5-aarch64
> >>> - remove unnecessary FILESEXTRAPATHS_prepend in gem5-aarch64-bootloader
> >> 
> >> 
> >> 
> >> I'm seeing an error when compiling this, which I wasn't seeing before.
> >> 
> >> 
> >> 
> >> ERROR: gem5-aarch64-native-gitAUTOINC+0c7f131ed2-r0 do_compile: scons build execution failed.
> >> ERROR: gem5-aarch64-native-gitAUTOINC+0c7f131ed2-r0 do_compile: Execution of '/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/run.do_compile.5490' failed with exit code 1:
> >> scons: Reading SConscript files ...
> >> TypeError: object of type 'map' has no len():
> >>  File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
> >>    compareVersions(gcc_version, '8.1') < 0:
> >>  File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
> >>    if len(v1) < len(v2): return -1
> >> WARNING: exit code 1 from a shell command.
> >> 
> >> ERROR: Logfile of failure stored in: /home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/log.do_compile.5490
> >> Log data follows:
> >> | DEBUG: Executing shell function do_compile
> >> | scons: Reading SConscript files ...
> >> | TypeError: object of type 'map' has no len():
> >> |   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
> >> |     compareVersions(gcc_version, '8.1') < 0:
> >> |   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
> >> |     if len(v1) < len(v2): return -1
> >> | ERROR: scons build execution failed.
> >> | WARNING: exit code 1 from a shell command.
> >> | ERROR: Execution of '/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/temp/run.do_compile.5490' failed with exit code 1:
> >> | scons: Reading SConscript files ...
> >> | TypeError: object of type 'map' has no len():
> >> |   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/SConstruct", line 405:
> >> |     compareVersions(gcc_version, '8.1') < 0:
> >> |   File "/home/jdm/yocto/poky/build/tmp/work/x86_64-linux/gem5-aarch64-native/gitAUTOINC+0c7f131ed2-r0/git/src/python/m5/util/__init__.py", line 139:
> >> |     if len(v1) < len(v2): return -1
> >> | WARNING: exit code 1 from a shell command.
> >> |
> >> ERROR: Task (/home/jdm/yocto/meta-arm/meta-arm-bsp/recipes-devtools/gem5/gem5-aarch64-native_git.bb:do_compile) failed with exit code ‘1’
> >> 
> >> 
> > 
> > Could you provide more information on your testing environment ?
> > Which version of Yocto, what configuration ?
> > 
> > This was compiling properly last time I tried it with Zeus.
> 
> To give more detail on my setup:
> 
> - meta-openembedded and poky version zeus up to date
> 
> - meta-arm with master status including everything you merged today
> 
> - bblayer.conf with the following layers:
> poky/meta \
> poky/meta-poky \
> poky/meta-yocto-bsp \
> meta-openembedded/meta-oe \
> meta-openembedded/meta-python \
> meta-arm/meta-arm \
> meta-arm/meta-arm-bsp
> - local.conf with:
> MACHINE ?= "gem5-arm64”
> 
> - bitbake core-image-minimal
> 
> Could you give more information on how you generate your error because I could not reproduce it ?


From a new poky git repo, on the zeus branch.

git clean -dffx
source oe-init-build-env > /dev/null
bitbake-layers layerindex-fetch meta-oe meta-python
bitbake-layers layerindex-fetch -b master meta-arm meta-arm-toolchain
bitbake-layers add-layer ~/yocto/meta-arm/meta-arm-bsp
echo -e '\nDL_DIR ?= "/yocto/downloads"\nBB_GENERATE_MIRROR_TARBALLS = "1"\nSSTATE_DIR ?= "/yocto/sstate-cache"' >> conf/local.conf
echo -e '\nINHERIT += "testimage"' >> conf/local.conf
MACHINE=gem5-arm64 bitbake core-image-sato


I'm running debian-10, which is probably why it was not seen by
others.

Thanks,
Jon


> 
> Bertrand
> 

> 


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-05-07 19:33 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-01 13:46 [PATCH] meta-arm-bsp: Update gem5 and switch to python3 Bertrand Marquis
2020-05-06 15:56 ` [meta-arm] " Jon Mason
2020-05-06 16:02   ` Bertrand Marquis
2020-05-06 16:38     ` Bertrand Marquis
2020-05-07 19:33       ` Jon Mason

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.