| Summary: | Jethro build fails for core-image-x11 with package_deb | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Dimitrij Gester <gesterdj> | ||||
| Component: | core | Assignee: | Aníbal Limón <anibal.limon> | ||||
| Status: | RESOLVED OBSOLETE | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | Medium | CC: | anibal.limon, meta.mr.watcher, meta.watcher | ||||
| Version: | 2.0.1 | ||||||
| Target Milestone: | 2.3 M4 | ||||||
| Hardware: | All | ||||||
| OS: | Multiple | ||||||
| Whiteboard: | |||||||
| OS type for building Yocto: | --- | Type of Regression: | --- | ||||
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |||||
| Attachments: |
|
||||||
|
Description
Dimitrij Gester
2016-03-25 22:55:56 UTC
Hi, I tested with poky on jethro (3b223f75eec1738fbc913858e8e11c8305e3edcb) and it works correctly. This issue seems to be about some problem with dependencies in the layers that you add. Could you share with me your local.conf and bblayers.conf? Regards, alimon Created attachment 3095 [details]
Config files and full log file of failing build
(In reply to comment #2) > Created attachment 3095 [details] > Config files and full log file of failing build Thanks for the files. I'll review the issue this week. This problem seems to be caused by adding some layers meta-oe and meta-multimedia , in conjuction with fsl. The deb package manager code needs to be extended to provide better explanation about what is failing not only unmeet dependencies. The problem is that packagegroup-core-x11-utils depends on xserver-nodm-init and x11-common, that are mutually exclusive. Using a devshell and installing manually the x11-common removes xserver-nodm-init creating a unmet dependency chain for packagegroup-core-x11-utils. The recipe meta-data needs to be fixed but we need a proper error message on the package manager may be a generic implementation in rpm, dpkg, ipk. (In reply to comment #5) > The problem is that packagegroup-core-x11-utils depends on xserver-nodm-init > and x11-common, that are mutually exclusive. To be more precise the xserver-nodm-init package depends on xserver-common that's conflicts with x11-common. > > Using a devshell and installing manually the x11-common removes > xserver-nodm-init creating a unmet dependency chain for > packagegroup-core-x11-utils. > > The recipe meta-data needs to be fixed but we need a proper error message on > the package manager may be a generic implementation in rpm, dpkg, ipk. The problem is about meta-oe providing it's own version of xserver-nodm-init [1], this recipe was removed for use the oe-core one. The case is that meta-oe xserver-nodm-init set an explicit dependency on xserver-common istead of a usage of VIRTUAL-xserver_common that resolves to x11-common or xserver-common depends on configuration. I'm researching why it fails on deb and works on rpm, seems to be how the package manager dpkg and rpm handles conflicts. [1] http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes-graphics?id=877e52fd75c7d3b88add94691df3beb5e0c54529 (In reply to comment #7) > The problem is about meta-oe providing it's own version of xserver-nodm-init > [1], > this recipe was removed for use the oe-core one. > > The case is that meta-oe xserver-nodm-init set an explicit dependency on > xserver-common istead of a usage of VIRTUAL-xserver_common that resolves to > x11-common or xserver-common depends on configuration. > > I'm researching why it fails on deb and works on rpm, seems to be how the > package manager dpkg and rpm handles conflicts. > > [1] > http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes- > graphics?id=877e52fd75c7d3b88add94691df3beb5e0c54529 The package_rpm class isn't generating rpm's with conflicts information, that's the reason to only fails in deb packages. $ rpm -qp build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-nodm-init-2.0-r22.cortexa9hf_vfp_neon.rpm --conflicts warning: build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-nodm-init-2.0-r22.cortexa9hf_vfp_neon.rpm: Header V4 DSA/SHA1 Signature, key ID 8c7109fe: NOKEY (In reply to comment #8) > (In reply to comment #7) > > The problem is about meta-oe providing it's own version of xserver-nodm-init > > [1], > > this recipe was removed for use the oe-core one. > > > > The case is that meta-oe xserver-nodm-init set an explicit dependency on > > xserver-common istead of a usage of VIRTUAL-xserver_common that resolves to > > x11-common or xserver-common depends on configuration. > > > > I'm researching why it fails on deb and works on rpm, seems to be how the > > package manager dpkg and rpm handles conflicts. > > > > [1] > > http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes- > > graphics?id=877e52fd75c7d3b88add94691df3beb5e0c54529 > > The package_rpm class isn't generating rpm's with conflicts information, > that's the reason to only fails in deb packages. > > $ rpm -qp > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-nodm-init-2.0- > r22.cortexa9hf_vfp_neon.rpm --conflicts > warning: > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-nodm-init-2.0- > r22.cortexa9hf_vfp_neon.rpm: Header V4 DSA/SHA1 Signature, key ID 8c7109fe: > NOKEY RPM information: alimon@alimonb-mobl1:~/repos/poky$ rpm -qp build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-common-1.34-r8.cortexa9hf_vfp_neon.rpm --conflicts warning: build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-common-1.34-r8.cortexa9hf_vfp_neon.rpm: Header V4 DSA/SHA1 Signature, key ID 0b445786: NOKEY DEB information: alimon@alimonb-mobl1:~/repos/poky$ dpkg-deb -I build-jethro-deb/tmp/deploy/deb/cortexa9hf-vfp-neon/xserver-common_1.34-r8_armel.deb new debian package, version 2.0. size 7426 bytes: control archive=381 bytes. 426 bytes, 13 lines control Package: xserver-common Version: 1.34-r8 Description: Common X11 scripts and support files Common X11 scripts and support files. Section: base Priority: optional Maintainer: Poky <poky@yoctoproject.org> Architecture: armel OE: xserver-common PackageArch: cortexa9hf-vfp-neon Depends: xmodmap, xrandr, xdpyinfo, fbset, xinput-calibrator Replaces: xserver-kdrive-common, x11-common Conflicts: xserver-kdrive-common, x11-common (In reply to comment #9) > (In reply to comment #8) > > (In reply to comment #7) > > > The problem is about meta-oe providing it's own version of xserver-nodm-init > > > [1], > > > this recipe was removed for use the oe-core one. > > > > > > The case is that meta-oe xserver-nodm-init set an explicit dependency on > > > xserver-common istead of a usage of VIRTUAL-xserver_common that resolves to > > > x11-common or xserver-common depends on configuration. > > > > > > I'm researching why it fails on deb and works on rpm, seems to be how the > > > package manager dpkg and rpm handles conflicts. > > > > > > [1] > > > http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes- > > > graphics?id=877e52fd75c7d3b88add94691df3beb5e0c54529 > > > > The package_rpm class isn't generating rpm's with conflicts information, > > that's the reason to only fails in deb packages. > > > > $ rpm -qp > > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-nodm-init-2.0- > > r22.cortexa9hf_vfp_neon.rpm --conflicts > > warning: > > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-nodm-init-2.0- > > r22.cortexa9hf_vfp_neon.rpm: Header V4 DSA/SHA1 Signature, key ID 8c7109fe: > > NOKEY > > RPM information: > > alimon@alimonb-mobl1:~/repos/poky$ rpm -qp > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-common-1.34-r8. > cortexa9hf_vfp_neon.rpm --conflicts > warning: > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-common-1.34-r8. > cortexa9hf_vfp_neon.rpm: Header V4 DSA/SHA1 Signature, key ID 0b445786: NOKEY > > DEB information: > > alimon@alimonb-mobl1:~/repos/poky$ dpkg-deb -I > build-jethro-deb/tmp/deploy/deb/cortexa9hf-vfp-neon/xserver-common_1.34- > r8_armel.deb > new debian package, version 2.0. > size 7426 bytes: control archive=381 bytes. > 426 bytes, 13 lines control > Package: xserver-common > Version: 1.34-r8 > Description: Common X11 scripts and support files > Common X11 scripts and support files. > Section: base > Priority: optional > Maintainer: Poky <poky@yoctoproject.org> > Architecture: armel > OE: xserver-common > PackageArch: cortexa9hf-vfp-neon > Depends: xmodmap, xrandr, xdpyinfo, fbset, xinput-calibrator > Replaces: xserver-kdrive-common, x11-common > Conflicts: xserver-kdrive-common, x11-common In package_rpm.bbclass if a RCONFLICTS is found in RPROVIDES isn't added to the rpm spec file also RREPLACES fills RPROVIDES and ROBSOLETES, that's the reason to donesn't fail using rpm backend [1]. [1] http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb?h=jethro#n43 Summary, The bug doesn't exist in master now because xserver-common and xserver-nodm-init was remove from meta-oe and the recipe meta-data fixed. There are further work to add insane test to ensure that RREPLACES and RCONFLICTS doesn't have the same value in the RPM backend at least or change the behaviour in the RPM backend?. (In reply to comment #10) > (In reply to comment #9) > > (In reply to comment #8) > > > (In reply to comment #7) > > > > The problem is about meta-oe providing it's own version of xserver-nodm-init > > > > [1], > > > > this recipe was removed for use the oe-core one. > > > > > > > > The case is that meta-oe xserver-nodm-init set an explicit dependency on > > > > xserver-common istead of a usage of VIRTUAL-xserver_common that resolves to > > > > x11-common or xserver-common depends on configuration. > > > > > > > > I'm researching why it fails on deb and works on rpm, seems to be how the > > > > package manager dpkg and rpm handles conflicts. > > > > > > > > [1] > > > > http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes- > > > > graphics?id=877e52fd75c7d3b88add94691df3beb5e0c54529 > > > > > > The package_rpm class isn't generating rpm's with conflicts information, > > > that's the reason to only fails in deb packages. > > > > > > $ rpm -qp > > > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-nodm-init-2.0- > > > r22.cortexa9hf_vfp_neon.rpm --conflicts > > > warning: > > > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-nodm-init-2.0- > > > r22.cortexa9hf_vfp_neon.rpm: Header V4 DSA/SHA1 Signature, key ID 8c7109fe: > > > NOKEY > > > > RPM information: > > > > alimon@alimonb-mobl1:~/repos/poky$ rpm -qp > > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-common-1.34-r8. > > cortexa9hf_vfp_neon.rpm --conflicts > > warning: > > build-jethro-deb/tmp/deploy/rpm/cortexa9hf_vfp_neon/xserver-common-1.34-r8. > > cortexa9hf_vfp_neon.rpm: Header V4 DSA/SHA1 Signature, key ID 0b445786: NOKEY > > > > DEB information: > > > > alimon@alimonb-mobl1:~/repos/poky$ dpkg-deb -I > > build-jethro-deb/tmp/deploy/deb/cortexa9hf-vfp-neon/xserver-common_1.34- > > r8_armel.deb > > new debian package, version 2.0. > > size 7426 bytes: control archive=381 bytes. > > 426 bytes, 13 lines control > > Package: xserver-common > > Version: 1.34-r8 > > Description: Common X11 scripts and support files > > Common X11 scripts and support files. > > Section: base > > Priority: optional > > Maintainer: Poky <poky@yoctoproject.org> > > Architecture: armel > > OE: xserver-common > > PackageArch: cortexa9hf-vfp-neon > > Depends: xmodmap, xrandr, xdpyinfo, fbset, xinput-calibrator > > Replaces: xserver-kdrive-common, x11-common > > Conflicts: xserver-kdrive-common, x11-common > > In package_rpm.bbclass if a RCONFLICTS is found in RPROVIDES isn't added to > the rpm spec file also RREPLACES fills RPROVIDES and ROBSOLETES, that's the > reason to donesn't fail using rpm backend [1]. > > [1] > http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-graphics/ > xserver-common/xserver-common_1.34.bb?h=jethro#n43 Removing the filtered code the error appears and the displays is related to recipe meta-data: ERROR: Unable to install packages. Command '/home/alimon/repos/poky/build-jethro-deb/tmp/sysroots/x86_64-linux/usr/bin/smart --log-level=warning --data-dir=/home/alimon/repos/poky/build-jethro-deb/tmp/work/imx6dlsabresd-poky-linux-gnueabi/core-image-x11/1.0-r0/rootfs/var/lib/smart install -y psplash@cortexa9hf_vfp_neon packagegroup-core-x11-base@all smartpm@cortexa9hf_vfp_neon packagegroup-base-extended@imx6dlsabresd rpm@cortexa9hf_vfp_neon packagegroup-core-boot@imx6dlsabresd locale-base-en-us@cortexa9hf_vfp_neon locale-base-en-gb@cortexa9hf_vfp_neon' returned 1: Loading cache... Updating cache... ######################################## [100%] Computing transaction...error: Can't install packagegroup-core-x11-utils-1.0-r40@all: unable to install provider for x11-common: error: x11-common-0.1-r47@cortexa9hf_vfp_neon is conflicted by xserver-common-1.34-r8@cortexa9hf_vfp_neon (In reply to comment #11) > Summary, > > The bug doesn't exist in master now because xserver-common and > xserver-nodm-init was remove from meta-oe and the recipe meta-data fixed. > > There are further work to add insane test to ensure that RREPLACES and > RCONFLICTS doesn't have the same value in the RPM backend at least or change > the behaviour in the RPM backend?. I sent a patch to remove the filtering if Conflicts are in Provides: http://lists.openembedded.org/pipermail/openembedded-core/2017-April/135797.html The RPM behavior was fix to comply with the deb failure, http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=9cb58a7f2b1329d60e8e7c9af2291f548cb651e0 The failure is due to a problem in meta-oe recipe that is already fix into master, http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes-graphics?id=877e52fd75c7d3b88add94691df3beb5e0c54529 |