[Yum] yum-builddep keeps already installed packages of wrong architecture
Peter Bauer
peter.m.bauer at gmail.com
Wed Jun 15 15:38:42 UTC 2016
Hi all,
i am trying to build an x86_64 RPM package with several
"BuildRequires" on a x86_64 host (Docker Image) which already has the
i686 versions of some of these required packages installed, e.g.
qt-560.spec:
BuildRequires: mysql-devel
When i execute
yum-builddep qt-560.spec
The output is:
...
--> Already installed : mysql-devel-5.5.35-1.fc18.i686
...
So the package that was intended to be installed
(mysql-devel-5.5.35-1.fc18.x86_64) does not get installed since there
is already the i686 version of it present. This means that the
architecture is not checked appropriately so this does not work as one
would expect.
To disable the check implemented in yum-builddep.py, it would be
sufficient to remove these lines:
--- yum-builddep.check 2016-06-15 15:31:04.212334026 +0000
+++ yum-builddep 2016-06-15 15:31:27.796140024 +0000
@@ -158,10 +158,6 @@
self.logger.debug(' REQ: %s' % dep)
if dep.startswith("rpmlib("):
continue
- instreq = self.returnInstalledPackagesByDep(dep)
- if instreq:
- self.logger.info(' --> Already installed : %s' %
instreq[0])
- continue
try:
pkg = self.returnPackageByDep(dep)
self.logger.info(' --> %s' % pkg)
I suggest to add a commandline parameter to control this behavour but
i think it is a sane default to have the same behaviour as "yum
install" does (which would additionally install the x86_64 package).
best regards,
Peter
More information about the Yum
mailing list