【问题标题】:Binutils fails to build when building GCC Cross Compiler构建 GCC 交叉编译器时,Binutils 无法构建
【发布时间】:2016-05-29 06:57:43
【问题描述】:

我正在构建一个 GCC 6.10 交叉编译器。我正在使用来自 OSDev 的tutorial。当我使用我的 shell sript 构建 binutils 时,我收到如下错误:

我使用 shell 脚本将 ClooG 和 ISL 移动到上面提到的教程中指定的 build-binutils 目录中。这是我的 shell 脚本:

export PREFIX="$HOME/opt/cross"
export TARGET=i686-elf
export PATH="$PREFIX/bin:$PATH"

cd $HOME/src

mv isl-0.17 binutils-2.9.1/isl
mv cloog-0.18.4 binutils-2.9.1/cloog

mkdir build-binutils
cd build-binutils
../binutils-2.9.1/configure --target=$TARGET --prefix="$PREFIX" --with-sysroot --disable-nls --disable-werror
make
make install

我正在使用他们网站上的最新版本。正如上面教程中提到的,GCC 可以正常安装,但 binutils 不能。 Binutils 开始设置,但最终崩溃。这是 binutils 本身的错误还是我在设置上做错了什么?我是否使用了不正确的版本?有什么建议吗?

【问题讨论】:

  • 您要构建什么版本的 GCC
  • 我正在尝试构建 GCC 6.1.0。我从 GNU 网站下载了 zip 文件。我正在使用问题中提到的网站与其他软件包一起构建它。
  • Binutils 2.9.1 实际上是近 20 年的一个版本。 2.9.1 小于 2.26。如果您正在构建 6.10 GCC 交叉编译器,您将需要使用 binutils-2.26。这是基于这张已知successful builds 的图表
  • 哇哦!我没有注意到这一点。我将尝试使用 2.26 版本重建 binutils。
  • @Michael Petch 非常感谢您的帮助!

标签: gcc cross-compiling osdev binutils


【解决方案1】:

很高兴看到人们接受构建 GCC 交叉编译器的建议,以避免主机环境 GCC 编译器及其本机头文件的潜在问题。

BINUTILS(和许多项目)的版本控制使用major.minor.patch 的版本控制。值 9 successful build matrix。

您正在构建一个 GCC 6.10 交叉编译器。 OSDev 的成员(在撰写本文时)发现Binutils-2.26 已成功用于构建 GCC 6.10 交叉编译器。

【讨论】:

    猜你喜欢
    • 2013-12-25
    • 2017-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    • 2011-09-03
    • 2014-09-30
    相关资源
    最近更新 更多