bug in dpkg ?!
Hi !
Any comments to the following ?
(Experienced while packaging the new verion of mysql - so don't worry)
-=(root@lathspell)=(tty1)=(21:52:24|04)=-
-=(/2/mysql)# dpkg -i --auto-deconfigure *-gpl-*.deb
dpkg: considering removing mysql-client in favour of mysql-gpl-client ...
dpkg: yes, will remove mysql-client in favour of mysql-gpl-client.
(Reading database ... 36721 files and directories currently installed.)
Unpacking mysql-gpl-client (from mysql-gpl-client_3.22.22-1_i386.deb) ...
De-configuring mysql-bench, so that we can remove mysql-client ...
Preparing to replace mysql-gpl-dev 3.22.22-1 (using
mysql-gpl-dev_3.22.22-1_i386.deb) ...
Unpacking replacement mysql-gpl-dev ...
Preparing to replace mysql-gpl-doc 3.22.22-1 (using
mysql-gpl-doc_3.22.22-1_i386.deb) ...
Unpacking replacement mysql-gpl-doc ...
dpkg: dependency problems prevent configuration of mysql-bench:
mysql-bench depends on mysql-client (>= 3.22.22); however:
Package mysql-client is not installed.
dpkg: error processing mysql-bench (--install):
dependency problems - leaving unconfigured
dpkg: ../../../main/packages.c:191: process_queue: Assertion `dependtry <= 4' failed.
Aborted
I don't like "Aborted" dpkg processes :-)
The control file of the "bad" .deb was:
Package: mysql-gpl-client
Version: 3.22.22-1
Section: misc
Priority: optional
Architecture: i386
Depends: debianutils (>=1.6), libdbi-perl, perl (>= 5.004), libc6 (>= 2.1), libncurses4, libstdc++2.9-glibc2.1, mysql-client
Suggests: mysqld, mysql-gpl-doc, mysql-gpl-dev, mysql-gpl-bench
Conflicts: mysql (<<3.22.22), mysql-base, mysql-server (<<3.22.22), mysql-doc (<<3.22.22), mysql-dev (<<3.22.22), mysql-bench (<<3.22.11), libdbd-mysql-perl (<<1.1832), mysql-client
Replaces: mysql, mysql-base, mysql-client
Provides: libmysql6, mysql-client
(Yes, I know, there are really a lot of conflicts - but tell me a better way !)
read you,
-christian-
P.S.: [later this evening...] Ahh! Do you know it, too ? It's easy:
While building this package, I had mysql-client installed. This pkg
provides a library libmysqlclient.so.6. The client binary in
mysql-gpl-client needs a libmysqclient.so.6. The package is even
providing it via a virtual package. So:
dh_makeshlib(?) thought that the libmysqlclient was only provided by
mysql-client and added it to the Depends: line. But I inserted
a "Conflicts: mysql-client" line myself to let the mysql-client package
get erased when one installs mysql-gpl-client.
So easy answer, but a bug it is. (But I don't know if dh_* calls dpkg)
--
Linux - the choice of the GNU generation. Join the Debian Project
http://www.debian.org
Christian Hammers * Oberer Heidweg 35 * D-52477 Alsdorf * Tel: 02404-25624
50 3C 52 26 3E 52 E7 20 D2 A1 F5 16 C4 C9 D4 D3 1024/925BCB55 1997/11/01
Reply to: