Skip to main content
Visitor II
September 22, 2022
Solved

Build st-image-weston error

  • September 22, 2022
  • 5 replies
  • 4993 views

Hi ST Community,

I'm trying to build st-weston-image for my stm32mp157f-dk2 board with yocto and the following configuration:

Release: kirkstone

MACHINE = "stm32mp1"

The layers that I use are the following:

BBLAYERS ?= " \

</absolute/path/to/yocto/directory>/poky/meta \

</absolute/path/to/yocto/directory>/poky/meta-poky \

</absolute/path/to/yocto/directory>/poky/meta-yocto-bsp \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-filesystems \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-gnome \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-initramfs \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-multimedia \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-networking \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-oe \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-perl \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-python \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-webserver \

</absolute/path/to/yocto/directory>/meta-openembedded/meta-xfce \

</absolute/path/to/yocto/directory>/meta-st-stm32mp \

</absolute/path/to/yocto/directory>/meta-st-openstlinux \

</absolute/path/to/yocto/directory>/meta-qt5 \

"

No other configuration has been done.

Then when I run de "bitbake st-image-weston" command to start with building process all is ok, but after parsing recipes appears the following error:

  ERROR: No recipes in default available for:

</absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-connectivity/bluez5/bluez5_5.64.bbappend

</absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-graphics/wayland/weston_10.0.0.bbappend

</absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.2.bbappend

</absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.2.bbappend

 </absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.2.bbappend

</absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.2.bbappend

I'm completely confused with this error. Does anyone know what this error means?

Thanks in advance.

    This topic has been closed for replies.
    Best answer by Erwan SZYMANSKI

    Hello @FBofi.1​ ,

    Yes this problem is known from ST side since kirkstone version. Now you have to place your distribution package in a very short path of your local system to avoid this issue.

    To not loose your last compilation time, when you will create your new <build_folder> after sourcing your environment in your new path, you can copy the sstate-cache of your last build (that failed with file name too long).

    In summary:

    • Create a new folder with a path name quite short (ex: $HOME/yocto/ostl4.0)
    • Follow distribution package article (repo init ... repo sync ...)
    • source your environment
    • in the <build_folder> created, copy the sstate-cache of your failed build
    • compile your image

    Kind regards,

    Erwan.

    5 replies

    Technical Moderator
    September 23, 2022

    Hello @FBofi.1​ ,

    If you kept the standard configuration delivered with OSTL 4.0, it is strange that this error happens.

    Can you check if you can detect the recipes with the following command ?

    bitbake-layers show-recipes > out.txt

    I advice you to put the output of the command in an out.txt file as it can be quite long.

    Kind regards,

    Erwan.

    FBofi.1Author
    Visitor II
    September 23, 2022

    Hello @Erwan SZYMANSKI​ , Thanks for the quick response

    I ran the command you said but i got a similar error. I'm attaching it below:

    ERROR: No recipes in default available for:

    </absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-connectivity/bluez5/bluez5_5.64.bbappend

    </absolute/path/to/yocto/directory>/yocto/meta-st-openstlinux/recipes-graphics/wayland/weston_10.0.0.bbappend

    </absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.2.bbappend

     </absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.2.bbappend

    </absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.2.bbappend

     </absolute/path/to/yocto/directory>/meta-st-openstlinux/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.2.bbappend

    Traceback (most recent call last):

     File "</absolute/path/to/yocto/directory>/poky/bitbake/bin/bitbake-layers", line 95, in <module>

       ret = main()

     File "</absolute/path/to/yocto/directory>/poky/bitbake/bin/bitbake-layers", line 85, in main

       tinfoil.parse_recipes()

     File "</absolute/path/to/yocto/directory>/poky/bitbake/lib/bb/tinfoil.py", line 448, in parse_recipes

       self.run_actions(config_params)

     File "</absolute/path/to/yocto/directory>/poky/bitbake/lib/bb/tinfoil.py", line 431, in run_actions

       raise TinfoilUIException(ret)

    bb.tinfoil.TinfoilUIException: 1

    As additional information, the repositories where I obtained the layers are the following

    https://github.com/STMicroelectronics/meta-st-openstlinux

    https://github.com/STMicroelectronics/meta-st-stm32mp

    https://github.com/meta-qt5/meta-qt5

    https://github.com/openembedded/meta-openembedded

    Any other idea what might be going on?

    Thanks, best regards.

    Technical Moderator
    September 23, 2022

    Moreover, with regarding to your Path, it seems to not have:

    <absolute_path>/layers/openembedded-core/meta inside that contains gstreamer recipes. Can you check that you have it somewhere in your <layer> folder and check if the layer is well added to your conf ?

    Kind regards,

    Erwan.

    Technical Moderator
    September 23, 2022

    Hello @FBofi.1​ ,

    If you get all the different layers independently, It is highly possible that some versions are not good or something like this.

    What I advice you is to start from Distribution Package article and get the repo with repo init and repo sync commands. With this method, you will have all the right versions for each layers.

    Kind regards,

    Erwan.

    (PS: you can take v22.07.27 instead of v22.06.15 as it corrects some minor bugs)

    Technical Moderator
    September 23, 2022

    Hello @FBofi.1 (Community Member)​ ,

    On the top of what has been mentioned above, the same issue found + workaround.

    https://stackoverflow.com/questions/49748528/yocto-files-directories-were-installed-but-not-shipped-in-any-package

    Regards,

    Olivier

    FBofi.1Author
    Visitor II
    September 27, 2022

    Hello @Erwan SZYMANSKI​ , @OlivierK​ 

    I tried to build the st-image-weston following the instructions of "Distribution Package article" instead to get repositories separately

    The first error was fixed but now the following raises:

    E: Failed to fetch store:/mnt/d1/yocto/STM32MPU-Ecosystem-v4.0.0/Distribution-Package/openstlinux-5.15-yocto-kirkstone-mp1-v22.07.27/build-openstlinuxweston-stm32mp1/tmp-glibc/work/stm32mp1-ostl-linux-gnueabi/st-image-resize-initrd/1.0-r0/oe-rootfs-repo/cortexa7t2hf-neon-vfpv4/./Packages Could not create temporary file for /mnt/d1/yocto/STM32MPU-Ecosystem-v4.0.0/Distribution-Package/openstlinux-5.15-yocto-kirkstone-mp1-v22.07.27/build-openstlinuxweston-stm32mp1/tmp-glibc/work/stm32mp1-ostl-linux-gnueabi/st-image-resize-initrd/1.0-r0/apt/lists/partial/_mnt_d1_yocto_STM32MPU-Ecosystem-v4.0.0_Distribution-Package_openstlinux-5.15-yocto-kirkstone-mp1-v22.07.27_build-openstlinuxweston-stm32mp1_tmp-glibc_work_stm32mp1-ostl-linux-gnueabi_st-image-resize-initrd_1.0-r0_oe-rootfs-repo_cortexa7t2hf-neon-vfpv4_._Packages - mkstemp (36: File name too long)

    Seems like the directory path name is too long, but I don't understand it because also i followed the indications related to directory structure of STM32MPU Ecosystem in the following link

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

    Any suggestions? Also I attach de entire log file to additional information

    Thanks, best regards.

    Technical Moderator
    September 27, 2022

    Hello @FBofi.1​ ,

    Yes this problem is known from ST side since kirkstone version. Now you have to place your distribution package in a very short path of your local system to avoid this issue.

    To not loose your last compilation time, when you will create your new <build_folder> after sourcing your environment in your new path, you can copy the sstate-cache of your last build (that failed with file name too long).

    In summary:

    • Create a new folder with a path name quite short (ex: $HOME/yocto/ostl4.0)
    • Follow distribution package article (repo init ... repo sync ...)
    • source your environment
    • in the <build_folder> created, copy the sstate-cache of your failed build
    • compile your image

    Kind regards,

    Erwan.