我正在尝试为我的覆盆子pi交叉编译构建crosstool-ng但是我遇到了一些问题。我在尝试构建crosstool版本1.19.0时遇到以下错误:
[CFG ] checking for arm-unknown-linux-gnueabi-gcc... (cached) arm-unknown-linux-gnueabi-gcc
[CFG ] checking version of arm-unknown-linux-gnueabi-gcc ... 4.8.2, ok
[CFG ] checking for gnumake... no
[CFG ] checking for gmake... no
[CFG ] checking for make... make
[CFG ] checking version of make... 4.0, bad
[CFG ] checking for gnumsgfmt... no
[CFG ] checking for gmsgfmt... no
[CFG ] checking for msgfmt... msgfmt
[CFG ] checking version of msgfmt... 0.19.1, ok
[CFG ] checking for makeinfo... makeinfo
[CFG ] checking version of makeinfo... 5.2, ok
[CFG ] checking for sed... sed
[CFG ] checking version of sed... 4.2.2, ok
[CFG ] checking for gawk... gawk
[CFG ] checking version of gawk... 4.1.1, ok
[CFG ] checking for arm-unknown-linux-gnueabi-nm... arm-unknown-linux-gnueabi-nm
[CFG ] checking for autoconf... autoconf
[CFG ] checking whether autoconf works... no
[ERROR] configure: error:
[CFG ] *** These critical programs are missing or too old: make
[CFG ] *** Check the INSTALL file for required versions.
[ERROR]
[ERROR] >>
[ERROR] >> Build failed in step 'Installing C library headers & start files'
[ERROR] >> called in step '(top-level)'
[ERROR] >>
[ERROR] >> Error happened in: CT_DoExecLog[scripts/functions@257]
[ERROR] >> called from: do_libc_backend_once[scripts/build/libc/glibc-eglibc.sh-common@347]
[ERROR] >> called from: do_libc_backend[scripts/build/libc/glibc-eglibc.sh-common@143]
[ERROR] >> called from: do_libc_start_files[scripts/build/libc/glibc-eglibc.sh-common@60]
[ERROR] >> called from: main[scripts/crosstool-NG.sh@632]
根据这个网站:http://colocsbar.blogspot.fr/2014/01/crosstool-ng-1190-et-make-40.html 我必须修补eglibc配置脚本。但是我找不到它是哪一个,我试图修复我在crosstool文件夹中找到的每个glibc脚本,但每次修补都失败了。 有没有人有解决方法摆脱这个错误?谢谢
答案 0 :(得分:3)
嗯,这有点晚了,但我遇到了同样的问题,信息很少。它似乎是eglibc中的短视版本限制。 INSTALL
文件说3.79或更新,但实际配置检查3.79和3.89(我认为,不确定使用的模式匹配语法),否则失败。该链接上有一个.patch文件,但我无法找到有关该文件的信息。
所以我grep了ac_prog_version=
的整个目录,它提供了大量的点击,但eglibc的配置就在那里。
我更改的文件是:.build/src/eglibc-2_13/configure
大概在5000左右;取决于您的版本。我将其更改为4.1,因为那是我的make版本(补丁版本为4.0 - 虽然它应该真正使它成为3.79或更新,如INSTALL
文件所示)。
答案 1 :(得分:1)
请允许我指出eglibc不再开发,建议您使用glibc代替。在尝试为Raspberry Pi构建工具链时,我遇到了与eglibc相关的问题。 eglibc可以很快从crosstools-ng中删除。请参阅此问题:https://github.com/crosstool-ng/crosstool-ng/issues/8。