Hi, All

bitbake core-image-minimal -c populate_sdk failed with below configuration in local.conf:

IMAGE_INSTALL_append = " bash"

require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

I did some research, but no clue how to fix,  so I want to get some help from community.

Error info:

core-image-minimal-1.0-r0 do_populate_sdk: Could not invoke dnf. Command '/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/2.7+snapshot/sysroots/core2-64-poky-linux/etc/dnf/dnf.conf --setopt=reposdir=/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/2.7+snapshot/sysroots/core2-64-poky-linux/etc/yum.repos.d --installroot=/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/2.7+snapshot/sysroots/core2-64-poky-linux --setopt=logdir=/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/temp --repofrompath=oe-repo,/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/oe-sdk-repo --nogpgcheck install lib32-packagegroup-core-standalone-sdk-target run-postinsts bash packagegroup-core-standalone-sdk-target packagegroup-core-boot target-sdk-provides-dummy' returned 1:

Error:
 Problem: package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with /bin/sh provided by bash-5.0-r0.core2_64   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with bash provided by bash-5.0-r0.core2_64   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with /bin/bash provided by bash-5.0-r0.core2_64   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target obsoletes bash provided by bash-5.0-r0.core2_64
  - cannot install the best candidate for the job
  - conflicting requests
(try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

Some other info:

1. package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target and bash-5.0-r0.core2_64 both provides /bin/sh and /bin/bash,  but if removed above multilib related 3lines in local.conf, populate_sdk will success.

I don't understand why it failed with multilib enabled, since no matter if multilib is enabled, package target-sdk-provides-dummy and bash will both provides /bin/sh and /bin/bash, but error only occurred when multilib enabled.

2.with multilib enabled,  in bitbake core-image-minimal -c devshell,  run:

/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/2.7+snapshot/sysroots/core2-64-poky-linux/etc/dnf/dnf.conf --setopt=reposdir=/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/2.7+snapshot/sysroots/core2-64-poky-linux/etc/yum.repos.d --installroot=/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/2.7+snapshot/sysroots/core2-64-poky-linux --setopt=logdir=/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/temp --repofrompath=oe-repo,/yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/oe-sdk-repo --nogpgcheck provides /bin/bash
DNF version: 4.2.2
cachedir: /yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/2.7+snapshot/sysroots/core2-64-poky-linux/var/cache/dnf Added oe-repo repo from /yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/oe-sdk-repo
repo: using cache for: oe-repo
not found other for:
not found modules for:
not found deltainfo for:
not found updateinfo for:
oe-repo: using metadata from Mon 05 Aug 2019 04:00:20 AM UTC.
Last metadata expiration check: 1:30:06 ago on Mon 05 Aug 2019 04:00:23 AM UTC.
No module defaults found
Searching Packages:
bash-5.0-r0.core2_64 : An sh-compatible command language interpreter
Repo        : oe-repo
Matched from:
Provide    : /bin/bash

target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target : Dummy packages which handle excluding packages from the sdk, e.g. ensuring perl is excluded from buildtools
Repo        : oe-repo
Matched from:
Provide    : /bin/bash

BUT,  if multilib is disabled, the cmd will return no matches.

3.  here is  configs under /yocto/builds/sysV/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/2.7+snapshot/sysroots/core2-64-poky-linux/etc/dnf/

 tree
.
├── dnf.conf
└── vars
    ├── arch
    └── releasever

$ cat dnf.conf

$ cat vars/arch
core2_64:x86_64:sdk_provides_dummy_target:qemux86_64:x86

$ cat vars/releasever
master




--
BRs

Sandy(Li Changqing)

--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to