2014-09-02 360 views
0

我正在尝试使用mipsel-linux-gcc编译器交叉编译内核和rootfs。主机是64位,而要构建的rootfs是32位。我试图安装ia32-libs和ia32-libs-multiarch。但失败了。我已经使用apt-get安装了gcc-multilib。但是,我无法建立。我已将PATH变量更新为所使用的工具链。mipsel-linux-gcc:命令未找到

echo $PATH 

USR/local/sbin中:在/ usr/local/bin目录:/ usr/sbin目录:在/ usr/bin中:/ sbin目录:/ bin中:在/ usr /游戏:/opt/toolchains/stbgcc-4.5。 3-1.1/bin中

错误,我得到:

[email protected]:uclinux-rootfs# make vmlinuz-7425b0-android 
make TFTPHOST=android-build TFTPDIR=/tftpboot/$USER TFTPPATH=$USER defaults-7425b0-android 
make[1]: Entering directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/uclinux-rootfs' 

WARNING: using toolchain binaries in: 
/opt/toolchains/stbgcc-4.5.3-1.1/bin 

The recommended toolchain for this release is: 
stbgcc-4.5.3-2.4 

perl -w bin/config.pl save_defaults 7425b0-android 
make[2]: Entering directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make -f Makefile savedefconfig 
make[3]: Entering directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
scripts/kconfig/conf --savedefconfig=defconfig Kconfig 
make[3]: Leaving directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make[2]: Leaving directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make -j1 silentoldconfig 
make[2]: Entering directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/uclinux-rootfs' 

WARNING: using toolchain binaries in: 
/opt/toolchains/stbgcc-4.5.3-1.1/bin 

The recommended toolchain for this release is: 
stbgcc-4.5.3-2.4 

make -C linux ARCH=mips silentoldconfig 
make[3]: Entering directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make -f Makefile silentoldconfig 
make[4]: Entering directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
scripts/kconfig/conf --silentoldconfig Kconfig 
make[4]: Leaving directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make[3]: Leaving directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make -C linux ARCH=mips prepare scripts 
make[3]: Entering directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make -f Makefile prepare 
/bin/sh: mipsel-linux-gcc: not found 
/bin/sh: mipsel-linux-gcc: not found 
/bin/sh: mipsel-linux-gcc: not found 
/bin/sh: mipsel-linux-gcc: not found 
make[4]: mipsel-linux-gcc: Command not found 
make[4]: Entering directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
CHK  include/linux/version.h 
CHK  include/generated/utsrelease.h 
CC  kernel/bounds.s 
/bin/sh: mipsel-linux-gcc: not found 
make[5]: *** [kernel/bounds.s] Error 127 
make[4]: *** [prepare0] Error 2 
make[4]: Leaving directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make[3]: *** [prepare] Error 2 
make[3]: Leaving directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/linux' 
make[2]: *** [silentoldconfig] Error 2 
make[2]: Leaving directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/uclinux-rootfs' 
make[1]: *** [defaults-7425b0-android] Error 2 
make[1]: Leaving directory `/opt/kernel/android/kernel-3.3-1.2-7425b0/uclinux-rootfs' 
make: *** [vmlinuz-7425b0-android] Error 2 

但我得到这mipsel体系Linux的海湾合作委员会给出了正确的答案

which mipsel-linux-uclibc-gcc 
/opt/toolchains/stbgcc-4.5.3-1.1/bin/mipsel-linux-uclibc-gcc 

可能是什么变数,我需要出口?

+0

尝试调用'/opt/toolchains/stbgcc-4.5.3-1.1/bin/mipsel-linux-uclibc-gcc -v',如果系统仍然说*找不到*,那么你没有适当的32位库。试试'ldd/opt/toolchains/stbgcc-4.5.3-1.1/bin/mipsel-linux-uclibc-gcc'。 – yegorich 2014-09-03 08:14:01

+0

ldd显示“不是一个动态的可执行文件” – 2014-09-04 08:35:11

+0

我有这样的预期。 ldd不了解它的格式。 'ls -l/opt/toolchains/stbgcc-4.5.3-1.1/bin/mipsel-linux-uclibc-gcc'和'file /opt/toolchains/stbgcc-4.5.3-1.1/bin/mipsel-linux是什么-uclibc-gcc'说?只是为了确定,这些简单的事情是O.K. – yegorich 2014-09-04 08:44:34

回答

0

我有'找不到命令'的问题。尝试安装ia32-libs或者如果没有找到,请尝试使用lib32z1 lib32ncurses5 lib32bz2-1.0软件包。这解决了我的问题。

+1

尽管这可能会回答这个问题,但请记住,两年前问过这个问题,原始海报最有可能还没有遇到这个问题。因此,任何答案都应针对可能也存在相同问题的更多当前用户,并且还应包含针对所建议的库的一些版本信息。 – Claies 2016-09-05 17:23:44