27

I don't know why I can't install ia32-libs. It claims for a dependency that cannot be found on repos.

junior@mediacenter:~$ sudo apt-get install ia32-libs
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 ia32-libs : Depends: ia32-libs-multiarch
E: Unable to correct problems, you have held broken packages.


junior@mediacenter:~$ sudo apt-get install ia32-libs-multiarch
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 ia32-libs-multiarch:i386 : Depends: gstreamer0.10-plugins-good:i386 but it is not going to be installed
                            Depends: gtk2-engines:i386 but it is not going to be installed
                            Depends: gtk2-engines-murrine:i386 but it is not going to be installed
                            Depends: gtk2-engines-pixbuf:i386 but it is not going to be installed
                            Depends: gtk2-engines-oxygen:i386 but it is not going to be installed
                            Depends: ibus-gtk:i386 but it is not going to be installed
                            Depends: libcanberra-gtk-module:i386 but it is not going to be installed
                            Depends: libcurl3:i386 but it is not going to be installed
                            Depends: libgail-common:i386 but it is not going to be installed
                            Depends: libglapi-mesa:i386 but it is not going to be installed
                            Depends: libglu1-mesa:i386 but it is not going to be installed
                            Depends: libgtk2.0-0:i386 but it is not going to be installed
                            Depends: libqt4-opengl:i386 but it is not going to be installed
                            Depends: librsvg2-common:i386 but it is not going to be installed
                            Recommends: libgl1-mesa-glx:i386 but it is not going to be installed
                            Recommends: libgl1-mesa-dri:i386 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Running ubuntu Precise:

junior@mediacenter:~$ uname -a
Linux mediacenter 3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Synaptic fix broken package does nothing. Any tips?? Thanks I need this package to install other apps like teamviewer7.

My sources.list is here.

10
  • 2
    Please post the contents of /etc/apt/sources.list, as well as any file in the directory /etc/apt/sources.list.d. May 13, 2012 at 15:30
  • 2
    Is there a particular reason you need to install ia32-libs? Since multiarch support was added, there isn't really a need for an amd64 package containing 32-bit libraries when you can install the corresponding i386 packages directly. May 14, 2012 at 10:04
  • Yes, I want to install teamviewer and it depends on ia32-libs May 19, 2012 at 12:20
  • 1
    CC @Oli: please pastebin output of dpkg --list
    – ish
    Jun 1, 2012 at 2:45
  • 1
    There's a deeper analysis with a multitude of solutions in this thread: askubuntu.com/questions/107230/…
    – ulidtko
    Mar 5, 2015 at 9:08

13 Answers 13

16

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!

2
  • Quite a long process, but it worked. Now I was able to install TeamViewer. Thanks a lot. Jul 7, 2014 at 16:40
  • That answer definitely have to be marked as "solution" and "community wiki" and probably distributed (by some bot?) to other same question topics, because it is the only one that solves problem among hundreds of other solutions! I've been trying to solve it for years! Thank you.
    – MInner
    Dec 24, 2014 at 11:06
6

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.

3
  • Thanks for all your suggestions, but none of them worked. Same error massages. Can't install teamviewer :( Jun 9, 2012 at 15:02
  • Were you able to install ia32-libs at all? What teamviewer source were you trying to install from?
    – all4naija
    Jun 9, 2012 at 19:45
  • Marcos, if you're still seeing this error even after making sure all updates are applied, then you probably have unofficial versions of some libraries installed. To track this down, for each of the libs reported to be a problem, try: 'sudo apt-get install $lib:i386'. e.g., 'sudo apt-get install gstreamer0.10-plugins-good:i386' should show why apt thinks this package is uninstallable for you. You may have to recurse through the dependencies several times to find the answer.
    – slangasek
    Jun 9, 2012 at 21:04
2

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.

1
  • 1
    Thanks for all your suggestions, but none of them worked. Same error massages. Can't install teamviewer :( Jun 9, 2012 at 15:02
1

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
3
  • The 64bit-version of gstreamer0.10-plugins-good was already installed. When I try to see why the i386 version won't install, it starts moaning about libcairo-gobject2:i386. When I try to installed that, it can, but only after it removes about 5000 other packages.
    – Oli
    Jun 7, 2012 at 8:19
  • @Oli : please pastebin output of apt-cache rdepends ia32-libs -- what package were you trying to install the compat libs for?
    – ish
    Jun 7, 2012 at 11:29
  • Thanks for all your suggestions, but none of them worked. Same error massages. Can't install teamviewer :( Jun 9, 2012 at 15:03
1

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.

1

You have to add i386 architecture, then update and install ia32-libs. Run the following commands:

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install ia32-libs

Is my best solution in Debian 7.0.

1

12.04 64 bit:

In Ubuntu 12.04 , installed dpkg package version doesn't have any --add-architecture paramater.So you cant add i386 architecture by dpkg --add-architecture i386 method.So run the below command to add i386 architecture to your 64 bit Ubuntu 12.04 .

sudo sh -c "echo 'foreign-architecture i386' > /etc/dpkg/dpkg.cfg.d/multiarch"
0

I had a similar problem when trying to install google-earth. What worked for me was to run 'sudo apt-get install -f': the components of the package got installed followed by google earth directly. Good for me because the update centre was having trouble up to that point & I thought I had broken my package system. Rebooted to double check and everything seems happy as Larry now.

0

I had the same problem a week ago , this is what does it for me.

Press ALT+CTRL+T to enter terminal:

  1. Type gksu nautilus and press ENTER key

  2. Click on the folder 'etc'. Next click the folder'apt'.

  3. Delete the folder sources.list.d

  4. Right-click and select 'Create New folder' to create a folder

  5. Rename the new folder to sources.list.d and close the windows.

  6. At terminal type sudo apt-get install ia32-libs-multiarch

  7. Input your root password when the system asks for it.

  8. Press ENTER to continue, and select 'y' for yes to continue with the installation.

I hope this one helps.

2
  • Thanks for all your suggestions, but none of them worked. Same error massages. Can't install teamviewer :( Jun 9, 2012 at 15:02
  • On the other hand, you have to give us information about the version of your Operating system and the version of teamviewer you intended to install. Thank you.
    – all4naija
    Jun 11, 2012 at 14:01
0

You have to add i386 architecture, then update and install ia32-libs. Run the following commands:

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install ia32-libs
0

If you having problem with installing ia32-libs then try this,

sudo apt-get install lib32z1

This worked for me.

Go to synaptic --> Search for lib32z1 --> select both runtime and development Apply and u r done.

0
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install  lib32z1 lib32ncurses5 lib32bz2-1.02z1
sudo apt-get install libstdc++6:i386



ldd adb
    linux-gate.so.1 (0xf77cc000)
    librt.so.1 => /lib/i386-linux-gnu/i686/cmov/librt.so.1 (0xf77a5000)
    libdl.so.2 => /lib/i386-linux-gnu/i686/cmov/libdl.so.2 (0xf77a0000)
    libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xf7783000)
    libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf769a000)
    libm.so.6 => /lib/i386-linux-gnu/i686/cmov/libm.so.6 (0xf7654000)
    libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf7638000)
    libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xf748d000)
    /lib/ld-linux.so.2 (0xf77cd000)
0

On 12.04 server I had to run the following:

sudo rm /var/lib/apt/lists/*
sudo apt-get update
sudo apt-get install ia32-libs

Not the answer you're looking for? Browse other questions tagged .