Re: contention for /usr/lib64 in libc6 and base-files
Larry Doolittle <ldoolitt@recycle.lbl.gov> writes:
> If I try to install (update) libc6, I get
>
> dpkg: error processing /var/cache/apt/archives/libc6_2.3.2.ds1-19.0.0.1.pure64_amd64.deb (--unpack):
> trying to overwrite `/usr/lib64', which is also in package base-files
The libc6 should have a "Replaces: base-files (<< 2.3.2.ds1-19.0.0.1.pure64)"
but that got overwritten during build by one of the magic scripts
glibc uses.
> If I try to install (update) base-files, I get
>
> The following packages have unmet dependencies:
> base-files: PreDepends: libc6 (>= 2.3.2.ds1-19.0.0.1.pure64) but 2.3.2.ds1-19 is to be installed
> libc6-dev: Depends: libc6 (= 2.3.2.ds1-19.0.0.1.pure64) but 2.3.2.ds1-19 is to be installed
> E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
>
> And of course, apt-get -f install tries to install libc6, so
> I'm back to square one. How do I recover from this?
What you need to do is update them at the same time:
dpkg -i libc6.deb libc6-dev.deb base-files.deb
or simpler (with the debs in t/):
dpkg -iGROEB t/
or use --force-overwrite.
> I understand from reading e.g.,
> http://lists.debian.org/debian-amd64/2004/12/msg00318.html
> that some of these links are critical for the system's operation,
> so I don't want to charge ahead without some idea where I'm going.
Overwriting is no problem since the link stays the same. Just don't
force the base-files Pre-Depends as that makes sure you always have
the link.
In case something goes horribly wrong and the link disapears on you
the only thing that will still work is:
/lib64/ld-linux-x86-64.so.2 <cmd>
e.g:
/lib64/ld-linux-x86-64.so.2 ln -s lib /lib64
> - Larry
MfG
Goswin
Reply to: