I've had a few problems upgrading an amd64 sid box with the arm 4.2 toolchain installed. First of all, this was the error: $ sudo apt-get -f install Reading package lists... Done Building dependency tree Reading state information... Done Correcting dependencies...Done The following extra packages will be installed: libc6 libc6-i386 The following packages will be upgraded: libc6 libc6-i386 2 upgraded, 0 newly installed, 0 to remove and 32 not upgraded. 3 not fully installed or removed. Need to get 0B/8340kB of archives. After unpacking 8192B of additional disk space will be used. Do you want to continue [Y/n]? Reading changelogs... Done (Reading database ... 131958 files and directories currently installed.) Preparing to replace libc6-i386 2.5-11 (using .../libc6-i386_2.6-1_amd64.deb) ... Unpacking replacement libc6-i386 ... dpkg: error processing /var/cache/apt/archives/libc6-i386_2.6-1_amd64.deb (--unpack): trying to overwrite `/usr/lib32', which is also in package lib32z1 Preparing to replace libc6 2.5-11 (using .../archives/libc6_2.6-1_amd64.deb) ... Unpacking replacement libc6 ... dpkg: error processing /var/cache/apt/archives/libc6_2.6-1_amd64.deb (--unpack): trying to overwrite `/usr/lib64', which is also in package binutils-arm-linux-gnu Errors were encountered while processing: /var/cache/apt/archives/libc6-i386_2.6-1_amd64.deb /var/cache/apt/archives/libc6_2.6-1_amd64.deb E: Sub-process /usr/bin/dpkg returned an error code (1) I'd ended up with LOTS of foo32 libraries (and -dev packages) installed as well as libc6-i386 which, as above, clearly causes problems but which was difficult to remove: $ sudo apt-get remove --purge libc6-i386 Reading package lists... Done Building dependency tree Reading state information... Done You might want to run ‘apt-get -f install’ to correct these: The following packages have unmet dependencies. lib32bz2-1.0: Depends: libc6-i386 but it is not going to be installed lib32gcc1: Depends: libc6-i386 (>= 2.5) but it is not going to be installed lib32z1: Depends: libc6-i386 (>= 2.5-5) but it is not going to be installed libc6-dev: Depends: libc6 (= 2.6-1) but 2.5-11 is to be installed libc6-dev-i386: Depends: libc6-i386 (= 2.6-1) but it is not going to be installed locales: Depends: glibc-2.6-1 E: Unmet dependencies. Try ‘apt-get -f install’ with no packages (or specify a solution). The solution to the i386/foo32 stuff was: $ sudo dpkg -P libc6-i386 lib32bz2-1.0 lib32z1 lib32gcc1 lib32bz2-dev lib32z1-dev gcc-4.1-multilib lib32z1-dev After navigating those (I lost track of a few other packages that had to be removed to accomplish the line above but IIRC it was -dev versions of packages already specified) I was finally able to force libc6. apt-get --force-yes failed, dpkg --force-overwrite-dir failed so I ended up using: $ sudo apt-get -d install libc6 $ sudo dpkg --force-overwrite -i /var/cache/apt/archives/libc6_2.6-1_amd64.deb $ sudo apt-get -f install $ sudo apt-get --reinstall install binutils-arm-linux-gnu $ sudo apt-get upgrade Upshot of it all (and the reason for posting) is that glibc has apparently started including /usr/lib64 and binutils-$ARCH-linux-gnu may need to Replace: glibc, at least on amd64. -- Neil Williams ============= http://www.data-freedom.org/ http://www.nosoftwarepatents.com/ http://www.linux.codehelp.co.uk/
Attachment:
pgpH8VadYyLIZ.pgp
Description: PGP signature