I'm trying to install
armel libraries and gcc support on an
armhf system. I've installed
libc6-dev:armel to get the
armel libraries and headers, and now believe that I need to install
gcc-multilib to get gcc to use them (when
-mfloat-abi=softfp is specified). However, the package installation fails:
$ sudo apt-get install gcc-4.6-multilib 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: gcc-4.6-multilib : Depends: libsfgcc1 (>= 1:4.6.3-1ubuntu5) but it is not going to be installed or libgcc1-armel but it is not installable E: Unable to correct problems, you have held broken packages.
libgcc1-armel is a virtual package provided by a package I already have installed:
$ dpkg -s libgcc1:armel | egrep 'Version|Provides' Version: 1:4.6.3-1ubuntu5 Provides: libgcc1-armel
Why does apt consider this package uninstallable when it is already installed?
Note: I've tried this with both apt/dpkg from precise (with
armel specified as a foreign architecture in
/etc/dpkg/dpkg.cfg.d/architectures) and with apt/dpkg from quantal (which seems to have more mature multi-arch support, such as
Note 2: Using
libsfgcc1 instead of
libgcc1:armel allows this library to be installed, but precludes installation of other multi-arch libraries like
libssl1.0.0:armel, which requires
libgcc1:armel only. I'm guessing that
libsfgcc1 is a transitional library that was introduced before true multi-arch support.