Cannot install ia32-libs [duplicate]

Solution 1:

I had a similar problem with broken dependencies when trying to install wine and acroread, and a complaint when trying to install ia32-libs-multiarch, just after upgrading to 12.04 from 11.04 (passing over 11.10). It seems that some ppa's I had in 11.04 installed newer versions of applications in the system. After upgrading, the remains of these apps seemed to do some mess in the dependencies.

The solution that seems to work (until now), was found on a german ubuntu board (http://forum.ubuntuusers.de, posts from user Lasall):

First a downgrade is required and done with the following: create the 'preferences' file:

sudo vi /etc/apt/preferences

and insert the following lines:

Package: *       
Pin: release a=precise*
Pin-Priority: 2012

enter:wq to write the file. Pin-Priority must be greater than 1000.

Then you may downgrade the offending applications with:

sudo apt-get dist-upgrade

Then you may install packages that complained about dependencies, like sudo apt-get install ia32-libs-multiarch, or sudo apt-get install ia32-libs.

Finally, you should remove the file you just created:

sudo rm /etc/apt/preferences

because else no new updates would be found.

Hope this helps you too!

Solution 2:

Since ia32-libs is now a transitional wrapper package around the set of multiarch-enabled libraries that were previously shipped bundled in ia32-libs, all of these library packages must be installable. In a released version of Ubuntu (such as in the precise and precise-updates pockets), packages will always be individually installable; however, multiarch imposes an additional restriction on installability: the library package must be at the exact same version across all architectures that you are installing it for.

In one of the examples given here, the libcairo-gobject2 package is implicated. This package has recently been updated for 12.04 as an SRU; which means that trying to install ia32-libs requires the amd64 version of libcairo-gobject2 on your system to match the i386 version that will be downloaded.

To ensure you're getting the correct versions of all library packages, do the following:

  1. Launch Update Manager
  2. Choose Settings at the bottom of the window
  3. Under Updates, make sure that Recommended Updates (precise-updates) is selected.
  4. Click Check to scan for any new software updates
  5. Click Install Updates to ensure your existing packages are all up to date

If you currently have a broken package installed which depends on ia32-libs, this may ask to remove it. You should proceed with the removal and reinstall once the operation is completed. You should then be able to run

sudo apt-get install ia32-libs

to install ia32-libs, or download package from http://packages.ubuntu.com/ and

sudo dpkg -i /path/to/package.deb
sudo apt-get -f install

to install your package and automatically pull in ia32-libs as a dependency.

Note that ia32-libs is considered deprecated in any case. For most software, you should instead install the i386 version of the package and let it directly pull the i386 libraries that it needs as dependencies, instead of using ia32-libs which is a catch-all.

Solution 3:

I have seen this problem manifest you try to install 64-bit third party binaries from debs that end up wanting ia32-libs, e.g. Teamviewer 7 or Skype.

Solution first, demonstration later:

  • Run:

    dpkg --list `apt-cache rdepends ia32-libs | sed -e '1,2d' -e 's/|//g' | tr '\n' ' '` | grep iU
    
  • And look for half-installed packages with version names, like:

    iU  skype                                  2.2.0.35-1                              Skype
    iU  teamviewer7                            7.0.9350                                TeamViewer (Remote Control Application)
    
  • dpkg --remove each offender, after which sudo apt-get install ia32-libs should succeed.

Solution 4:

I know this may seem like a long way around but, try copying and pasting each of those dependencies into the following:

sudo apt-get install PACKAGE_NAME

For example this is a line from the error message:

Depends: **gstreamer0.10-plugins-good**:i386 but it is not going to be installed

Then execute:

sudo apt-get install gstreamer0.10-plugins-good

Make sure and leave out the :i386 on the end of each command.
After installing each of those try installing ia32-libs-multiarch again:

sudo apt-get install ia32-libs-multiarch

If there are no errors, then continue to install ia32-libs.

sudo apt-get install ia32-libs

Solution 5:

I too face the same problem while installing teamviewer7 64bit package on Precise.

I think you might have disabled the updates.

Please goto Ubuntu Software CenterEditSoftware Sources.

In the Updates tab, please check all the updates (you can remove it later) and close.

Please go to terminal and run:

sudo apt-get update
sudo apt-get install ia32-libs

It worked for me, if not run sudo apt-get dist-upgrade and then try re-installing ia32-libs.