首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在cygwin下为raspberry pi交叉工具链构建eglibc

无法在cygwin下为raspberry pi交叉工具链构建eglibc
EN

Stack Overflow用户
提问于 2015-07-22 23:58:14
回答 1查看 136关注 0票数 0

我正在使用Mikhail Kupchik教程为Windows构建一个raspberry pi交叉工具链。为了避免与使用最近的包有关的问题,我使用了Cygwin时间机器。我收到的包裹列在这里上。

根据手册,我在VirtualBox中安装了Windows,并下载了所有所需的档案。我在一个shell脚本中合并了准备构建的步骤:

代码语言:javascript
复制
#!/bin/bash

cd /opt/crosstool/src
for i in `ls -1 *.tar.gz`
do
    tar -xf $i
    rm -f $i
done

mkdir patches
mv *.diff patches

mkdir -p /opt/crosstool/gcc-4.6.3-eglibc-2.13/arm-linux-gnueabi
mkdir /opt/crosstool/gcc-4.6.3-eglibc-2.13/arm-linux-gnueabihf

cp -r gcc-4.6.3 gcc-4.6.3.noarmhf
cd gcc-4.6.3
cat ../patches/gcc--armhf-triplet.diff | patch -p2
cat ../patches/gcc--arm-dynamic-linker.diff | patch -p2
cat ../patches/gcc--arm-multilib-defaults.diff | patch -p2
cd ../eglibc-2.13
cat ../patches/eglibc--remove-manual.diff | patch -p1
cat ../patches/eglibc--cross-cygwin.diff | patch -p1
cd ..
cp -r eglibc-2.13 eglibc-2.13.noarmhf
cd eglibc-2.13
cat ../patches/eglibc--armhf-triplet.diff | patch -p1
cat ../patches/eglibc--armhf-linker.diff | patch -p1
cat ../patches/eglibc--ldconfig-cache-abi.diff | patch -p1
cat ../patches/eglibc--soname-hack.diff | patch -p1
cd ..
tar -h -zcf gcc-4.6.3-all.tar.gz \
    gcc-4.6.3 gcc-4.6.3.noarmhf

replace () {
    for i in extra-lib.mk Makeconfig Makerules linuxthreads/Makefile \
             nptl/Makefile sysdeps/i386/i686/Makefile sysdeps/sparc/sparc32/sparcv9/Makefile
    do
        sed -i.bak s/\.oS/\.oZ/ $i
    done
}

cd /opt/crosstool/src/eglibc-2.13
replace
cd /opt/crosstool/src/eglibc-2.13.noarmhf
replace

cd /opt/crosstool/src
for i in build-gmp build-mpfr build-mpc build-binutils build-gcc build-eglibc build-linux
do
    mkdir $i
done

然后,我执行构建的打击:for i in ``seq 1 4``; do ./build_gcc_cross_$i.sh; done。脚本包含构建集,这也来自本教程。上市公司:1 (原创) 2 (原创) 3. (原创) 4. (原创)

前三套配置进行得很好。但第四次失败了。在控制台上,我看到了大量的“文件找不到”错误。很高兴我提供了完整的stout+stderrconfig.log

我希望能就我的问题提供任何帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-30 01:01:46

可耻的是:我没有正确地阅读第三个脚本的输出,并且错过了错误消息:

代码语言:javascript
复制
/bin/sh: perl: Command not found.

这可能是因为脚本的输出是:

代码语言:javascript
复制
=== build script: OK ===

然后,我注意到脚本中完全缺乏错误处理。

安装perl之后,我可以继续构建交叉编译环境。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31575995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档