Alexander K. Hansen wrote:
> Lorinc Del Motte wrote:
[]
>>>> Sorry, dpkg is already the newest version.
>>>> 0 packages upgraded, 0 newly installed, 0 to remove and 11  not upgraded.
>>>> 1 packages not fully installed or removed.
>>>> Need to get 0B of archives. After unpacking 0B will be used.
>>>> dyld: Library not loaded: /sw/lib/libiconv.2.dylib
>>>>   Referenced from: /sw/bin/dpkg
>>>>   Reason: Incompatible library version: dpkg requires version 6.0.0 or 
>>>> later, but
>>>>       
>>> libiconv.2.dylib
>>>     
>>>> provides version 5.0.0
>>>> E: Sub-process /sw/bin/dpkg exited unexpectedly
[]
> It looks like your dpkg was built against a later libiconv, and then the 
> latter was downgraded to an older version.  By any chance did you 
> install something from the unstable tree and then try to revert your 
> base packages?
> 
> Unfortunately, once dpkg is broken it's pretty hard to do anything with 
> Fink.

I think there is a scenario where Lorinc would be completely innocent:

  Install fink from the latest binary installer;
  then update dpkg from binary
  -> Fatal crash!

I just tried it, it "works", at least on ppc; on intel, it crashes 
before the new dpkg gets installed, because a dependency is missing. 
Here are the three simple commands I ran as root:

installer -pkg /Volumes/Fink-0.8.1-PowerPC-Installer/Fink\ 
0.8.1-PowerPC\ Installer.pkg/ -target /
apt-get update
apt-get install dpkg

The last command crashes as follows:

Preparing to replace dpkg 1.10.21-1218 (using 
.../dpkg_1.10.21-1219_darwin-powerpc.deb) ...
Unpacking replacement dpkg ...
dyld: Library not loaded: /sw/lib/libiconv.2.dylib
   Referenced from: /sw/bin/dpkg
   Reason: Incompatible library version: dpkg requires version 6.0.0 or 
later, but libiconv.2.dylib provides version 5.0.0
E: Sub-process /sw/bin/dpkg exited unexpectedly

And from then on the new Fink installation is fatally hosed :-(

What happens is that the binary installer has dpkg-1.10.21-1218 which is 
linked with libiconv-1.9.1-11 which has compatibility version 5.0.0.
The binary repository, however, has also dpkg-1.10.21-1219 (in its 
"current" tree), and this revision is linked to a libiconv.dylib of 
compat version 6.0.0, which itself would be provided by the 
libiconv-1.10.6 package, also available from the "current" bindist.

Now dpkg's dependency on libiconv is unversioned, so that it is 
perfectly possible to apt-get update; apt-get install dpkg without first 
updating libiconv.

This looks to me like a serious bug, and I am therefore CCing devel.
BTW, on intel this cannot happen, because one gets instead:

  Sorry, but the following packages have unmet dependencies:
    dpkg: Depends: libgettext3-shlibs but it is not installable.

Indeed, the dependency libgettext3-shlibs is not present in the bindist, 
so that dpkg cannot be upgraded to its latest version in the bindist. 
This is less fatal than what happens on ppc, but it doesn't look right 
either.

-- 
Martin




-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to