3mdeb / yocto-docker

This repository is not currently used. For yocto projects we use https://github.com/siemens/kas container
7 stars 2 forks source link

Cannot build `core-image-base` with `meta-riscv`: utility `file` is not found #57

Open mkopec opened 1 year ago

mkopec commented 1 year ago

Building core-image-base for MangoPi MQ Pro using instructions from https://github.com/riscv/meta-riscv , while attempting to run docker-bake.sh, fails with the following error message:

ERROR: The following required tools (as specified by HOSTTOOLS) appear to be unavailable in PATH, please install them in order to proceed:
  file
pietrushnic commented 1 year ago

@mkopec I guess we last used this container a long time ago. The preferred method is KAS: https://blog.3mdeb.com/2019/2019-02-07-kas/

TomaszAIR commented 1 year ago

@pietrushnic we are still using this container in some projects or training; but as you said KAS is preferred method.

@mkopec saying so, I am not sure if docker-bake.sh was tested. Could you please provide instructions how did you prepared layers for your build? This container was tested last time on kirkstone https://github.com/3mdeb/yocto-docker/blob/master/Dockerfile#L4 From what I see, meta-riscv uses mickledore on main - https://github.com/riscv/meta-riscv/blob/master/conf/layer.conf#L26

Could you please test on kirkstone first? There should be dedicated branch on meta-riscv

mkopec commented 1 year ago

@TomaszAIR Thanks, here's the exact steps I followed:

mkdir riscv-yocto && cd riscv-yocto
repo init -u https://github.com/riscv/meta-riscv  -b master -m tools/manifests/riscv-yocto.xml
repo sync
repo start work --all
MACHINE=mangopi-mq-pro POKY_DIR=`realpath openembedded-core` yocto-docker/docker-bake.sh core-image-base

Will try to reproduce with kirkstone next. But it's probably preferable to use KAS from the get-go, as you and @pietrushnic said, so I'll try going in that direction first. For now I managed to build on my host system - had some issues with Arch's GCC v13 being too new for cmake-native, but worked around it by setting the CC to gcc-12 in openembedded-core/meta/conf/bitbake.conf

@pietrushnic Thanks, will check it out - I admit I saw that blogpost earlier, but assumed this repo would be easier to start with. I also saw some recent commits so I guessed it's still supported.

TomaszAIR commented 1 year ago

@mkopec here https://youtu.be/PLl8jwZOpS0?t=1409 I had presentation about different layer management tools, also kas (it uses outdated kas-docker, now kas-container https://github.com/siemens/kas/blob/master/kas-container) - you can also check that out.

pietrushnic commented 1 year ago

@pietrushnic we are still using this container in some projects or training; but as you said KAS is preferred method.

So, I guess we should get rid of this dependency.

mkopec commented 1 year ago

Will try to reproduce with kirkstone

That won't work since support for MangoPi MQ Pro wasn't added until very recently :\