Hello,
Processor SDK 06.02.00.81 installs Python 3.5.
I am required to install Python 3.7.
Can you please provide guidance on how to achieve this in the context of the Processor SDK. Thank you.
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
Processor SDK 06.02.00.81 installs Python 3.5.
I am required to install Python 3.7.
Can you please provide guidance on how to achieve this in the context of the Processor SDK. Thank you.
Hi Richard,
The python version is provided by the Yocto's oe-core, and the current Processor SDK 6.02 uses the "thud" version of the Yocto which provides Python version 3.5.
Our next version of the Processor SDK release based on 7.x will be picking up the "zeus" version of the Yocto that integrates 3.7 version of Python.
With that, I believe that you will need to wait for a newer version of the Processor SDK or use a bleeding edge version which is not yet released. The third option is to attempt to update the python recipes alone but I think its not a straight forward.
Let me know if you have any follow up questions.
Regards
Karthik
Hello Karthik,
Could I please have guidance on how to use the bleeding edge in the context of the Processor SDK and still be in a supportable position?
thank you
Richard Elberger
Hi Richard,
You can build the latest of the zeus using the below commands. Please note that you need to download the newer versions of the GCC-ARM Toolchain, the versions are referenced in the commands below.
Note that since this is bleeding edge, you will see may see some occasional instabilities.
git clone git://arago-project.org/git/projects/oe-layersetup.git tisdk cd tisdk/ ./oe-layertool-setup.sh -f configs/arago-zeus-config.txt cd build/ vi conf/local.conf . conf/setenv export PATH=/sdk/tools/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu/bin:/sdk/tools/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin:$PATH TOOLCHAIN_BASE=/sdk/tools MACHINE=j7-evm bitbake -k tisdk-rootfs-image
Regards
Karthik
Hello Karthik,
Unfortunately, there are more open issues now. Using the same arm compiler toolchain, I get these errors:
ERROR: Failed to obtain external Arm toolchain version: Execution of '/home/X/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc -v' failed: command not found
I setup the toolchain like it tells me in the Processor SDK:
export TOOLCHAIN_PATH_ARMV7=$HOME/gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf export TOOLCHAIN_PATH_ARMV8=$HOME/gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu
Then I spent time going through http://arago-project.org/wiki/index.php/Setting_Up_Build_Environment
Checking your command line, I have a couple questions:
Also, I don't know if it makes a difference but the machine definition is MACHINE = "am57xx-evm", not J7.
Hi Richard,
The TOOLCHAIN_BASE is the environment variable that points to the base folder that contains the toolchain chain. You can see the usage from my example above. It will be updated in the SDK documentation when we have the SDK released on the latest zeus.
The compiler can be downloaded from here: https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads/9-2-2019-12, please make sure that you download the ARMv7 and ARMv8 versions of the compiler. This will again be part of the SDK documentation. Sorry, should have provided this to you earlier.
Yes, absolutely, the machine that you need to use is MACHINE=am57xx-evm. At the moment, I do not have a physical possession of the am57xx-evm and hence tried my build with the j7-evm. But please go ahead and build for am57xx-evm and let me know if everything is fine.
Regards
Karthik
Thank you for your help. do_rootfs is failing and I will resolve that through another route but your help certainly got me on the right path!
Hello Karthik,
For completeness, this is the current failure on the arago zeus branch. Note that this is all successful on Poky and some other hw platforms for zeus.
bitbake -r conf/am574x_iot_greengrass.conf arago-base-tisdk-image
NOTE: Started PRServer with DBfile: /src/tisdk/build/cache/prserv.sqlite3, IP: 127.0.0.1, PORT: 44587, PID: 15470
WARNING: /src/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/meta/external-arm-secondary-sdk-toolchain.bb: Variable key PREFERRED_PROVIDER_binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} (external-arm-sdk-toolchain) replaces original key PREFERRED_PROVIDER_binutils-cross-canadian- (external-arm-secondary-sdk-toolchain).
WARNING: /src/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/meta/external-arm-secondary-sdk-toolchain.bb: Variable key PREFERRED_PROVIDER_gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} (external-arm-sdk-toolchain) replaces original key PREFERRED_PROVIDER_gcc-cross-canadian- (external-arm-secondary-sdk-toolchain).
WARNING: /src/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/meta/external-linaro-secondary-sdk-toolchain.bb: Variable key PREFERRED_PROVIDER_binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} (external-arm-sdk-toolchain) replaces original key PREFERRED_PROVIDER_binutils-cross-canadian- (external-arm-secondary-sdk-toolchain).
WARNING: /src/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/meta/external-linaro-secondary-sdk-toolchain.bb: Variable key PREFERRED_PROVIDER_gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} (external-arm-sdk-toolchain) replaces original key PREFERRED_PROVIDER_gcc-cross-canadian- (external-arm-secondary-sdk-toolchain).
Parsing recipes: 100% |##########################################| Time: 0:00:29
Parsing of 3160 .bb files complete (0 cached, 3160 parsed). 4441 targets, 499 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
NOTE: Multiple providers are available for virtual/java-native (cacao-native, jamvm-native)
Consider defining a PREFERRED_PROVIDER entry to match virtual/java-native
NOTE: Multiple providers are available for virtual/java-initial-native (cacao-initial-native, jamvm-initial-native)
Consider defining a PREFERRED_PROVIDER entry to match virtual/java-initial-native
Build Configuration:
BB_VERSION = "1.44.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "ubuntu-18.04"
TARGET_SYS = "arm-linux-gnueabi"
MACHINE = "am57xx-evm"
DISTRO = "arago"
DISTRO_VERSION = "2020.03"
TUNE_FEATURES = "arm armv7a vfp thumb neon callconvention-hard"
TARGET_FPU = "hard"
meta-arago-distro
meta-arago-extras = "zeus:54e2384494a2432e7f865c593b545e812887401f"
meta-browser = "HEAD:5f365ef0f842ba4651efe88787cf9c63bc8b6cb3"
meta-qt5 = "zeus:852e279a45da2b68719fecdaad3573b2ada9558c"
meta-selinux = "zeus:44d760413920ba440439b8bc7c2a71ca26cd7a2d"
meta-virtualization = "zeus:1bb515609594215aaf950555211e18c6c9a8e308"
meta-networking
meta-python
meta-oe
meta-gnome
meta-filesystems = "zeus:9e60d30669a2ad0598e9abf0cd15ee06b523986b"
meta-ti = "zeus:f6e024415b42adaa0d6ca04da83c86dcf92dfd87"
meta-linaro-toolchain
meta-optee = "zeus:a414b5555301d0c80facb6dc5a5badbc69036131"
meta = "zeus:26b13f59385c1ed871aee7653c3ee7241affca38"
meta-aws = "zeus:0ee0bd1e711e89fccad45aa87c1f889431d9c391"
meta-java = "zeus:95d56a63cdbf1ed9db99a1f02075568fd45a668b"
Initialising tasks: 100% |#######################################| Time: 0:00:02
Sstate summary: Wanted 1752 Found 0 Missed 1752 Current 0 (0% match, 0% complete)
NOTE: Executing Tasks
NOTE: Setscene tasks completed
WARNING: icu-native-64.2-r0 do_fetch: Failed to fetch URL download.icu-project.org/.../icu4c-64_2-src.tgz, attempting MIRRORS if available
WARNING: external-arm-toolchain-2019.12-r0 do_package: QA Issue: external-arm-toolchain: Files/directories were installed but not shipped in any package:
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/unwind.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stdbool.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stdint.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stdatomic.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/arm_fp16.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stdalign.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stdint-gcc.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/arm_cmse.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/ISO_Fortran_binding.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stddef.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stdnoreturn.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/mmintrin.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stdfix.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/openacc.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/gcov.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/stdarg.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/iso646.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/arm_neon.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/arm_acle.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/float.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/varargs.h
/usr/lib/gcc/arm-linux-gnueabi/9.2.1/include/unwind-arm-common.h
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
external-arm-toolchain: 22 installed and not shipped files. [installed-vs-shipped]
WARNING: gnutls-3.6.13-r0.arago0 do_package: QA Issue: gnutls-src has an incompatible license. Excluding from packaging. [incompatible-license]
WARNING: gnutls-3.6.13-r0.arago0 do_package: QA Issue: gnutls-dbg has an incompatible license. Excluding from packaging. [incompatible-license]
WARNING: gnutls-3.6.13-r0.arago0 do_package: QA Issue: gnutls-openssl has an incompatible license. Excluding from packaging. [incompatible-license]
WARNING: gnutls-3.6.13-r0.arago0 do_package: QA Issue: gnutls-staticdev has an incompatible license. Excluding from packaging. [incompatible-license]
WARNING: gnutls-3.6.13-r0.arago0 do_package: QA Issue: gnutls-dev has an incompatible license. Excluding from packaging. [incompatible-license]
WARNING: gnutls-3.6.13-r0.arago0 do_package: QA Issue: gnutls-doc has an incompatible license. Excluding from packaging. [incompatible-license]
WARNING: gnutls-3.6.13-r0.arago0 do_package: QA Issue: gnutls-bin has an incompatible license. Excluding from packaging. [incompatible-license]
WARNING: external-arm-toolchain-2019.12-r0 do_package_qa: QA Issue: external-arm-toolchain: /sbin/ldconfig is owned by uid 623486203, which is the same as the user running bitbake. This may be due to host contamination [host-user-contaminated]
WARNING: gcc-arm-9.2-r2019.12 do_package: QA Issue: gcc: Files/directories were installed but not shipped in any package:
/usr/bin/arm-linux-gnueabi-arm-none-linux-gnueabihf-g++
/usr/bin/arm-linux-gnueabi-arm-none-linux-gnueabihf-gcc-ar
/usr/bin/arm-linux-gnueabi-arm-none-linux-gnueabihf-gcc-ranlib
/usr/bin/arm-linux-gnueabi-arm-none-linux-gnueabihf-gcc
/usr/bin/arm-linux-gnueabi-arm-none-linux-gnueabihf-gcc-nm
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
gcc: 5 installed and not shipped files. [installed-vs-shipped]
WARNING: openjdk-8-native-242-r0 do_populate_sysroot: File '/src/tisdk/build/arago-tmp-external-arm-toolchain/work/x86_64-linux/openjdk-8-native/242-r0/recipe-sysroot-native/usr/lib/jvm/openjdk-8-native/jre/lib/amd64/libfreetype.so.6' from openjdk-8-native was already stripped, this will prevent future debugging!
WARNING: arago-base-tisdk-image-1.0-r0 do_rootfs: docker-ce.postinst returned 1, marking as unpacked only, configuration required on target.
ERROR: arago-base-tisdk-image-1.0-r0 do_rootfs: Postinstall scriptlets of ['docker-ce'] have failed. If the intention is to defer them to first boot,
then please place them into pkg_postinst_ontarget_${PN} ().
Deferring to first boot via 'exit 1' is no longer supported.
Details of the failure are in /src/tisdk/build/arago-tmp-external-arm-toolchain/work/am57xx_evm-linux-gnueabi/arago-base-tisdk-image/1.0-r0/temp/log.do_rootfs.
ERROR: Logfile of failure stored in: /src/tisdk/build/arago-tmp-external-arm-toolchain/work/am57xx_evm-linux-gnueabi/arago-base-tisdk-image/1.0-r0/temp/log.do_rootfs.11944
ERROR: Task (/src/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/images/arago-base-tisdk-image.bb:do_rootfs) failed with exit code '1'
NOTE: Tasks Summary: Attempted 5502 tasks of which 1 didn't need to be rerun and 1 failed.
NOTE: Writing buildhistory
NOTE: Writing buildhistory took: 2 seconds
Summary: 1 task failed:
/src/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/images/arago-base-tisdk-image.bb:do_rootfs
Summary: There were 17 WARNING messages shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.
===========================================================================================================
The following is the conf file used for building, after having added in the meta-aws and meta-java layers to the build:
cat conf/am574x_iot_greengrass.conf
MACHINE = "am57xx-evm"
IMAGE_INSTALL_append = " greengrass"
And you can see the RDEPENDS here
https://github.com/aws/meta-aws/blob/zeus/recipes-greengrass/greengrass-core/greengrass_1.10.1.bb
Hi Richard,
As discussed last week, TI is moving forward with dunfell instead of zeus for the upcoming SDK - dunfell has python 3.8 included in it.
We discussed that this introduces additional challenges to integrate greengrass since it currently does not support Python 3.8.
Let us revisit this when we have the dependencies in place and lets work offline and come back to this E2E to summarize at a later time.
Regards
Karthik