我目前正在尝试为我的raspberry 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配置脚本。但是我找不到它,我试图将我能找到的每个glibc脚本修补到crosstool文件夹中,但每次修补均失败。
有谁能解决这个错误?谢谢
最佳答案
好吧,这有点晚了,但是我遇到了同样的问题,信息很少。它似乎是eglibc中的近视版本限制。 INSTALL
文件显示3.79或更高版本,但实际配置会对照3.79和3.89(我认为不确定使用的模式匹配语法)进行检查,否则将失败。该链接上有一个.patch文件,但我也找不到有关该文件的信息。
因此,我为ac_prog_version=
复制了整个目录,该目录给出了很多匹配,但eglibc的配置在那里。
我更改的文件是:.build/src/eglibc-2_13/configure
大约在5000线左右;取决于您的版本。我将其更改为4.1,因为这是我的make版本(补丁程序的版本为4.0,尽管它确实应该使它成为3.79或更高版本,如INSTALL
文件所示)。