cancel
Showing results for 
Search instead for 
Did you mean: 

Yocto Langdale SDK build error

giz
Associate

I'm trying to build an SDK (Yocto Langdale) for core-image-minimal:

bitbake -c populate_sdk core-image-minimal

and get this error: 

nothing provides libpython2.7.so.1.0()(64bit) needed by nativesdk-gcc-arm-none-eabi-10-r0.x86_64_nativesdk 

Full error:

ERROR: core-image-minimal-1.0-r0 do_populate_sdk: Could not invoke dnf. Command '/home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/sdk/image/etc/dnf/dnf.conf --setopt=reposdir=/home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/sdk/image/etc/yum.repos.d --installroot=/home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/sdk/image --setopt=logdir=/home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp --repofrompath=oe-repo,/home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/oe-sdk-repo --nogpgcheck install nativesdk-binutils nativesdk-dtc nativesdk-fiptool-stm32mp nativesdk-flex nativesdk-gcc-arm-none-eabi nativesdk-glibc-gconv-utf-16 nativesdk-glibc-gconv-utf-32 nativesdk-ncurses-libncursesw nativesdk-openocd-stm32mp nativesdk-openssl-dev nativesdk-optee-sdk nativesdk-packagegroup-sdk-host nativesdk-perl-module-encode nativesdk-perl-module-encode-encoding nativesdk-perl-module-encode-mime-header nativesdk-perl-module-file-spec-functions nativesdk-perl-module-integer nativesdk-perl-module-term-ansicolor nativesdk-python3-cffi nativesdk-python3-cryptography nativesdk-python3-dev nativesdk-python3-pillow nativesdk-python3-pycparser nativesdk-python3-pycryptodomex nativesdk-python3-pyelftools nativesdk-python3-setuptools nativesdk-sdcard-raw-tools nativesdk-stm32wrapper4dbg nativesdk-svd-tools nativesdk-swig nativesdk-u-boot-mkimage nativesdk-wayland packagegroup-cross-canadian-stm32mp1 packagegroup-rust-cross-canadian-stm32mp1' returned 1:
DNF version: 4.14.0
cachedir: /home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/sdk/image/var/cache/dnf
Added oe-repo repo from /home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/oe-sdk-repo
User-Agent: constructed: 'libdnf (Ubuntu 22.04; generic; Linux.x86_64)'
repo: using cache for: oe-repo
oe-repo: using metadata from Sat 07 Jan 2023 01:21:03 PM UTC.
Last metadata expiration check: 0:00:01 ago on Sat 07 Jan 2023 01:23:34 PM UTC.
--> Starting dependency resolution
--> Finished dependency resolution
Error: 
 Problem: conflicting requests
  - nothing provides libpython2.7.so.1.0()(64bit) needed by nativesdk-gcc-arm-none-eabi-10-r0.x86_64_nativesdk
(try to add '--skip-broken' to skip uninstallable packages)
 
ERROR: Logfile of failure stored in: /home/giz/projects/Stm32Prototype/yocto-project-langdale/build/tmp/work/stm32mp1-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_populate_sdk.762477
ERROR: Task (/home/giz/projects/Stm32Prototype/yocto-project-langdale/build/../poky/meta/recipes-core/images/core-image-minimal.bb:do_populate_sdk) failed with exit code '1'

local.conf:

# debug
EXTRA_IMAGE_FEATURES = "debug-tweaks tools-debug ssh-server-dropbear"
 
# image
INHERIT += "image-buildinfo"
IMAGE_BUILDINFO_VARS:append = " DATETIME DISTRO_NAME IMAGE_BASENAME MACHINE TUNE_PKGARCH" 
IMAGE_BUILDINFO_VARS:append = " MACHINE_FEATURES DISTRO_FEATURES COMMON_FEATURES IMAGE_FEATURES"
IMAGE_BUILDINFO_VARS:append = " TUNE_FEATURES TARGET_FPU"
IMAGE_ROOTFS_SIZE = "200000"
 
# sdk
SDK_TOOLCHAIN_LANGS += " rust"
 
MACHINE ??= "stm32mp1"
DISTRO ??= "poky"
BBMULTICONFIG ?= ""

bblayers.conf:

BBLAYERS ?= " \
    ${TOPDIR}/../meta-openembedded/meta-oe \
    ${TOPDIR}/../meta-openembedded/meta-python \
    ${TOPDIR}/../meta-st-stm32mp \
    ${TOPDIR}/../poky/meta \
    ${TOPDIR}/../poky/meta-poky \
    ${TOPDIR}/../poky/meta-yocto-bsp"
BBPATH ?= "${TOPDIR}"
BBFILES ??= ""

Any hint how to fix this? The SDK in the Kirkstone release builds without any issues.

1 ACCEPTED SOLUTION

Accepted Solutions

Hi @giz 

The last STM32MPU ecosystem 5.0 released by end of June is based on Yocto Mickledore.

You should be able to generate a SDK including the Rust environment. You just need to add these two lines in your local configuration file:

 

TOOLCHAIN_TARGET_TASK:append = " libstd-rs"
SDK_TOOLCHAIN_LANGS:append = " rust"

 

Then, generate your SDK following the wiki page https://wiki.st.com/stm32mpu/wiki/How_to_create_an_SDK_for_OpenSTLinux_distribution 

After installing the SDK and sourcing the environment, cargo and rust environments will be available.

Best regards,

--JM

In order to give better visibility on the answered topics, please click on 'Select as Best' on the reply which solved your issue or answered your question. See also 'Best Answers'

View solution in original post

3 REPLIES 3
PatrickF
ST Employee

Hi @giz​ 

you should use Kirkstone with OpenSTLinux MPU ecosystem release v4.1:

https://wiki.st.com/stm32mpu/wiki/STM32_MPU_ecosystem_release_note

https://wiki.st.com/stm32mpu/wiki/STM32MP1_Distribution_Package

Regards.

In order to give better visibility on the answered topics, please click on 'Select as Best' on the reply which solved your issue or answered your question. See also 'Best Answers'

In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.

I see, thanks. Are there any plans to support Langdale? Is there a road map in general for new releases?

The reason I'm eager trying out the newer Yocto release, is the added support for Rust/Go compilers in the SDK. 

Hi @giz 

The last STM32MPU ecosystem 5.0 released by end of June is based on Yocto Mickledore.

You should be able to generate a SDK including the Rust environment. You just need to add these two lines in your local configuration file:

 

TOOLCHAIN_TARGET_TASK:append = " libstd-rs"
SDK_TOOLCHAIN_LANGS:append = " rust"

 

Then, generate your SDK following the wiki page https://wiki.st.com/stm32mpu/wiki/How_to_create_an_SDK_for_OpenSTLinux_distribution 

After installing the SDK and sourcing the environment, cargo and rust environments will be available.

Best regards,

--JM

In order to give better visibility on the answered topics, please click on 'Select as Best' on the reply which solved your issue or answered your question. See also 'Best Answers'