Debian Wheezy上的armhf工具链编译Beaglebone Black内核

时间:2014-11-19 23:32:39

标签: debian cross-compiling beagleboneblack

我正在尝试在Debian Wheezy(amd64)VM上为beaglebone black(使用armhf)构建Linux内核。但是,我需要获得gh和其他工具的armhf版本。

根据我在多个论坛和博客上可以理解的内容,以前用于获取交叉编译器的emdebian链不再受支持,MultiArch就是前进的方向。我想使用MultiArch,因为我需要在接下来的几年中多次构建。

所以有几个问题:

  1. 如何在debian wheezy上获得armhf gcc的工作版本? 我试过了:

    dpkg --add-architecture armhf
    sudo apt-get install gcc:armhf
    

    但是由于无法解析依赖关系而失败(APT版本0.9.7.9(amd64)& dpkg版本1.16.15(amd64)都声称支持多种架构支持)。我得到的只是

    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:armhf : Depends: cpp:armhf (>= 4:4.6.3-8) but it is not going to be installed
             Depends: gcc-4.6:armhf (>= 4.4.7-1~) but it is not going to be installed
    E: Unable to correct problems, you have held broken packages.
    

    执行sudo apt-get build-dep armhf gcc也无济于事,因为依赖项本身具有apt-get无法递归解析的其他依赖项。

  2. 内核构建可能需要哪些其他armhf特定工具。我怎么能得到它们?

  3. 有一个简单的方法吗?

1 个答案:

答案 0 :(得分:0)

不幸的是,由于人力短缺,Wheezy对跨工具链的支持很差,而且我们假设multiarch crosstoolchains会更快地准备好,所以旧的工具链不能过早维护。对不起。

Emdebian.org现在在停电后回来了。所以现有的lenny和squeeze crosstoolchains再次可用,jessie的新的多层构建交叉工具链也是如此。对于不稳定,现在有不稳定的交叉工具链。

但Wheezy仍然存在差距。我尝试为wheezy(使用buildcross)重建一些工具链并遇到问题。如果有人想要修复,那么emdebian很乐意接待他们。

这是info https://wiki.debian.org/CrossToolchains

的最终页面