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.

Linux: Yocto build issue

Tool/software: Linux

Hello

I try to do a custom linux with yocto and meta-ti for am335x processor.

Y use :

poky warrior git branch version

meta-ti git branch 2019.00 version

I do some configuration in the local.conf, bblayers.conf, custom-recipe (Polycaptil-image-minimal), machine.conf, ... to prepare and build my custom linux system for am335x processor (custom board based on the ti am335x-evmsk starter kit dev board).

And when I try to compile the linux system, I got this error message "Multiple .bb files are due to be built which each provide virtual/libgbm".

Here is what I have on my terminal before, during and after the compilation :

nikola@PBL-NIKOLA:~/Bureau/OS_dev/warriorOS/outOS/warrior$ bitbake Polycaptil-image-minimal
Loading cache: 100% |################################################################################################################################################################################| Time: 0:00:00
Loaded 1535 entries from dependency cache.
Parsing recipes: 100% |##############################################################################################################################################################################| Time: 0:00:01
Parsing of 992 .bb files complete (981 cached, 11 parsed). 1527 targets, 170 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
NOTE: Multiple providers are available for virtual/libgbm (libgbm, mesa)
Consider defining a PREFERRED_PROVIDER entry to match virtual/libgbm

Build Configuration:
BB_VERSION           = "1.42.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "universal"
TARGET_SYS           = "arm-poky-linux-gnueabi"
MACHINE              = "am335x-evm"
DISTRO               = "poky"
DISTRO_VERSION       = "2.7"
TUNE_FEATURES        = "arm armv7a vfp thumb neon callconvention-hard"
TARGET_FPU           = "hard"
meta-poky            
meta                 = "local_origin/warrior:0e392026ffefee098a890c39bc3ca1f697bacb52"
meta-ti              = "local_ti2019.00:9e9db020a8ac0c1f331fde11c9810a02facd638b"
meta-polycaptil      = "local_warrior_base_2019:0f355099db021fd97caf3a2df583d5c8e9a30159"

ERROR: Multiple .bb files are due to be built which each provide virtual/libgbm:####################                                                                                                 | ETA:  0:00:00
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb
  /home/nikola/Bureau/OS_dev/warriorOS/layers_packages/meta-ti/recipes-graphics/gbm/libgbm_10.0.0.bb
A list of tasks depending on these providers is shown and may help explain where the dependency comes from.
/home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb has unique dependees:
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.5.bb:do_build
  /home/nikola/Bureau/OS_dev/warriorOS/layers_packages/meta-ti/recipes-graphics/gbm/libgbm_10.0.0.bb:do_build
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb:do_build
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-support/vte/vte_0.52.2.bb:do_build
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.5.bb:do_package_write_rpm
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/pango/pango_1.42.4.bb:do_build
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.5.bb:do_package
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.4.bb:do_package_qa
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.4.bb:do_package_write_rpm
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.3.bb:do_package
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb:do_package
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.3.1.bb:do_build
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.3.bb:do_build
  /home/nikola/Bureau/OS_dev/warriorOS/meta-polycaptil/recipes-Polycaptil-image-minimal/image/Polycaptil-image-minimal.bb:do_populate_lic_deploy
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.3.bb:do_prepare_recipe_sysroot
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.5.bb:do_prepare_recipe_sysroot
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.5.bb:do_package_qa
  /home/nikola/Bureau/OS_dev/warriorOS/layers_packages/meta-ti/recipes-graphics/gbm/libgbm_10.0.0.bb:do_package_qa
  /home/nikola/Bureau/OS_dev/warriorOS/layers_packages/meta-ti/recipes-graphics/gbm/libgbm_10.0.0.bb:do_package_write_rpm
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb:do_prepare_recipe_sysroot
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-sato/matchbox-terminal/matchbox-terminal_0.2.bb:do_build
/home/nikola/Bureau/OS_dev/warriorOS/layers_packages/meta-ti/recipes-graphics/gbm/libgbm_10.0.0.bb has unique dependees:
  
It could be that one recipe provides something the other doesn't and should. The following provider and runtime provider differences may be helpful.
/home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb has unique provides:
  virtual/libgles1
  virtual/mesa
  virtual/egl
  virtual/libgles2
  virtual/libgl
  mesa
/home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb has unique rprovides:
  libosmesa-dev
  libgl1
  mesa-megadriver
  libgles3-mesa
  libgles2-dev
  libgles2-mesa-dev
  libgles1-dev
  libegl-mesa
  mesa-doc
  mesa-staticdev
  libgles2
  libgl-mesa-dev
  libgles1-mesa
  ^mesa-driver-.*
  libgles3-mesa-dev
  libgles1-mesa-dev
  libgles2-mesa
  mesa-src
  libegl-mesa-dev
  libgles3
  libegl-dev
  libglapi
  mesa
  libglapi-dev
  libgles1
  ^mesa-locale-.*
  mesa-locale
  mesa-dbg
  libgles3-dev
  mesa-vulkan-drivers
  libgl
  libgl-dev
  libglesv1-cm1
  libglesv2-2
  libxatracker
  mesa-dev
  libosmesa
  libegl
  libxatracker-dev
  libgl-mesa
  libegl1
/home/nikola/Bureau/OS_dev/warriorOS/layers_packages/meta-ti/recipes-graphics/gbm/libgbm_10.0.0.bb has unique provides:
  libgbm
/home/nikola/Bureau/OS_dev/warriorOS/layers_packages/meta-ti/recipes-graphics/gbm/libgbm_10.0.0.bb has unique rprovides:
  ^libgbm-locale-.*
  libgbm-dbg
  libgbm-doc
  libgbm-staticdev
  libgbm-src
  libgbm-locale
Initialising tasks: 100% |###########################################################################################################################################################################| Time: 0:00:02
Sstate summary: Wanted 180 Found 144 Missed 36 Current 1238 (80% match, 97% complete)
NOTE: Executing SetScene Tasks
NOTE: Executing RunQueue Tasks
ERROR: xserver-xorg-2_1.20.4-r0 do_prepare_recipe_sysroot: The file /sysroot-providers/virtual_libgbm is installed by both libgbm and mesa, aborting
ERROR: xserver-xorg-2_1.20.4-r0 do_prepare_recipe_sysroot: 
ERROR: xserver-xorg-2_1.20.4-r0 do_prepare_recipe_sysroot: Function failed: extend_recipe_sysroot
ERROR: Logfile of failure stored in: /home/nikola/Bureau/OS_dev/warriorOS/outOS/warrior/tmp/work/armv7at2hf-neon-poky-linux-gnueabi/xserver-xorg/2_1.20.4-r0/temp/log.do_prepare_recipe_sysroot.8940
ERROR: Task (/home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.4.bb:do_prepare_recipe_sysroot) failed with exit code '1'
NOTE: Tasks Summary: Attempted 2305 tasks of which 2304 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
  /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.20.4.bb:do_prepare_recipe_sysroot
Summary: There were 4 ERROR messages shown, returning a non-zero exit code.
nikola@PBL-NIKOLA:~/Bureau/OS_dev/warriorOS/outOS/warrior$ 

As it is written there is "Multiple .bb files are due to be built which each provide virtual/libgbm".
But I don't know what is mean, what is the problem and how to solve it.

Can somebody help me ?

Nikola

  • Hello Nikola,

    You have a multiple recipes providing virtual/libgbm. Consider defining a PREFERRED_PROVIDER entry in include prefs fo fix this issue.

    PREFERRED_PROVIDER_virtual/libgbm = "libgbm"

    Best regards,
    Kemal
  • Hello Nikola,

    Please, close this thread by clicking on "This resolved my issue" button.

    Best regards,
    Kemal

  • Hello Kemal,

    thank's to took time to answer

    But where I need to do this ?
    On a machine.conf file (if yes, where if this file) ?
    On my custom recipe (bb bile) ?

    Nikola
  • You can add it to <tisdk>/sources/meta-arago/meta-arago-distro/conf/distro/include/arago-prefs.inc like place or <tisdk>/build/conf/local.conf file.

  • Hello Kemal,

    I placed it on build/bonf/local.conf file (I called my build dir warrior)

    But I have other problem which appear, yocto request ['matchbox-terminal', 'vte', 'gtk+3', 'libgl'], here is what I got when I try to use bitbake :

    nikola@PBL-NIKOLA:~/Bureau/OS_dev/warriorOS/outOS/warrior$ bitbake Polycaptil-image-minimal
    Loading cache: 100% |################################################################################################################################################################################| Time: 0:00:00
    Loaded 1527 entries from dependency cache.
    NOTE: Resolving any missing task queue dependencies
    ERROR: Nothing RPROVIDES 'libgl' (but /home/nikola/Bureau/OS_dev/warriorOS/poky/meta/recipes-gnome/gtk+/gtk+3_3.24.5.bb RDEPENDS on or otherwise requires it)
    NOTE: Runtime target 'libgl' is unbuildable, removing...
    Missing or unbuildable dependency chain was: ['libgl']
    NOTE: Runtime target 'matchbox-terminal' is unbuildable, removing...
    Missing or unbuildable dependency chain was: ['matchbox-terminal', 'vte', 'gtk+3', 'libgl']
    NOTE: Runtime target 'packagegroup-core-x11-base' is unbuildable, removing...
    Missing or unbuildable dependency chain was: ['packagegroup-core-x11-base', 'matchbox-terminal', 'vte', 'gtk+3', 'libgl']
    ERROR: Required build target 'Polycaptil-image-minimal' has no buildable providers.
    Missing or unbuildable dependency chain was: ['Polycaptil-image-minimal', 'packagegroup-core-x11-base', 'matchbox-terminal', 'vte', 'gtk+3', 'libgl']
    
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
    nikola@PBL-NIKOLA:~/Bureau/OS_dev/warriorOS/outOS/warrior$ 
    

    Nikola

  • gtk+3 requires libgl but you do not have such a recipe which provides it, that is the issue here.

  • Hello Nikola,

    Were you able to include the libgl recipe in your OE build system? I’ve not heard back from you in a month. I hope we were able to help. I’m going to close the thread now and mark the issue resolved. If you have any follow-up questions, please reply to this thread or start a new thread.

    Thanks,
    Kemal