Why do some packages conflict with themselves?

Oneiric supports Multi-Arch, that is, allowing you to install packages of different architectures simultaneously (currently i386 and amd64 a.k.a. 32-bit and 64-bit). Some packages cannot be installed simultaneously (like libc6:i386 and libc6:amd64). aptitude cannot handle these cases and therefore thinks that it may be a good idea to remove those packages. It's recommended to use apt-get now.

If you use apt-cache show libc-bin, you can see the line mentioning this conflict:

Multi-Arch: foreign

A description of this field can be found at http://wiki.debian.org/Multiarch/Implementation#Multi-Arch:_foreign_support_packages


Aptitude isn't showing you the whole story.

$ apt-cache depends libc-bin | grep Conflicts
  Conflicts: libc-bin:i386

I'm on a 64bit install so it's actually only conflicting with its 32bit counterpart.


You've run into bug 831768.

aptitude doesn't understand multiarch yet, I'm afraid. It's best to avoid aptitude until this is resolved. One can survive with apt-get.