[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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- (--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-" 
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- but 2.3.2.ds1-19 is to be installed
>   libc6-dev: Depends: libc6 (= 2.3.2.ds1- 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>


/lib64/ld-linux-x86-64.so.2 ln -s lib /lib64

>    - Larry


Reply to: