I tried to install a cross toolchain so I could build Linux kernel on amd64 (Debian testing "jessie") for my ARM system. I have this entry in sources.list:

deb http://www.emdebian.org/debian sid main

When I tried to install gcc-4.7-arm-linux-gnueabi, I got an error:

cc-4.7-arm-linux-gnueabi : Depends: libgomp1-armel-cross (>=4.7.2-5) but it is not going to be installed

libgomp1-armel-cross in turn depends on gcc-4.8-base-armel-cross which is not available anywhere.

At some point, I did manage to install these cross-build tools from the same repository, and even built a kernel that now runs on these ARM systems some weeks ago. Is there something broken in that repository? I tried a few other versions of GCC, and still get the same issue.

A not-ideal solution is cross-building in an Ubuntu 12.04 VM. The distro has the ARM cross-compiler available from its official repositories.


4 Answers 4


Emdebian repositories are recommended to be used in stable most of the time since there could be utilities not built in the repositories, packages that were pulled back, etc. If you want to ensure that all your libraries have the correct dependencies, I would suggest stable or testing since they are less likely to have some dependency problem or have something that got borked.

  • stable required me to enable squeeze, not wheezy as I expected. I also had to settle for gcc-4.4-arm-linux-gnueabi.
    – tshepang
    Dec 5, 2013 at 1:41
  • Hope you don't need a newer version of the toolchain D:.
    – Braiam
    Dec 5, 2013 at 1:45
  • Not really. This will do.
    – tshepang
    Dec 5, 2013 at 1:47
  • 1
    What does borked mean in this context?
    – tshepang
    Mar 3, 2014 at 9:55
  • @Tshepang damage really bad something
    – Braiam
    Mar 3, 2014 at 13:40

Debian now includes cross-toolchains officially, though they won't be part of the next Stable release (8.0). Virtual packages are provided.


Stable does not help. The 4.7 - 4.8 inconsistency is still there. The inconsistency has existed for me since (around) version 4.4 of gcc.

  • 1
    Consider adding a source to confirm the existence of this inconsistency.
    – HalosGhost
    Jun 25, 2014 at 6:58

I would suggest to do things in the "Linux way", which means for me, as less automatic configuration as possible. I would download the required toolchain from the distributor’s site, and set a .CC file in your project's working dir. Your CC file should look something like this:

export CROSS_COMPILE=< TOOLCHAIN PREFIX` i.e "arm-none-gnueabi-" (the last "-" is important)

After doing that, before running any compilation, issue "source .CC", and then compile as you do normally, i.e "gcc/g++/ld... ...". The compilation will automatically use the toolchain (you will see it in the output of the compilation, that the toolchain is being used)

You must log in to answer this question.

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