"); //-->
解决办法:
[root@localhost crosstool-0.43]# su mike //切换到普通用户mike [mike@localhost crosstool-0.43]$ ./arm.sh + TARBALLS_DIR=/home/mike/downloads + RESULT_TOP=/opt/crosstool + export TARBALLS_DIR RESULT_TOP + GCC_LANGUAGES=c,c++ + export GCC_LANGUAGES + mkdir -p /opt/crosstool ++ cat arm.dat gcc-3.4.5-glibc-2.3.6.dat + eval 'KERNELCONFIG=`pwd`/arm.config' TARGET=arm-linux 'TARGET_CFLAGS="-O"' BINUTILS_DIR=binutils-2.15 GCC_DIR=gcc-3.4.5 GLIBC_DIR=glibc-2.3.6 LINUX_DIR=linux-2.6.28.2 LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0 GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.2 sh all.sh --notest +++ pwd ++ KERNELCONFIG=/home/mike/crosstool-0.43/arm.config ++ TARGET=arm-linux ++ TARGET_CFLAGS=-O ++ BINUTILS_DIR=binutils-2.15 ++ GCC_DIR=gcc-3.4.5 ++ GLIBC_DIR=glibc-2.3.6 ++ LINUX_DIR=linux-2.6.28.2 ++ LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0 ++ GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.2 ++ sh all.sh --notest You set both LINUX_DIR and LINUX_SANITIZED_HEADER_DIR - ignoring LINUX_DIR for the build DEJAGNU not set, so not running any regression tests GCC_EXTRA_CONFIG not set, so not passing any extra options to gcc's configure script GLIBC_ADDON_OPTIONS not set, so building all glibc add-on's + TOOLCOMBO=gcc-3.4.5-glibc-2.3.6 ++ pwd + BUILD_DIR=/home/mike/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6 ++ pwd + TOP_DIR=/home/mike/crosstool-0.43 + test -z '' + SRC_DIR=/home/mike/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6 + echo 'SRC_DIR not set, so source tarballs will be unpacked in the build directory' SRC_DIR not set, so source tarballs will be unpacked in the build directory + test -w /tmp + TARBALLS_DIR=/home/mike/downloads + RESULT_TOP=/opt/crosstool + PREFIX=/opt/crosstool/gcc-3.4.5-glibc-2.3.6/arm-linux + export TOOLCOMBO + export PREFIX + export BUILD_DIR + export SRC_DIR + export TARBALLS_DIR + export TOP_DIR + '[' 1 -gt 0 ']' + opt_no_test=1 + shift + '[' 0 -gt 0 ']' + test '' = 1 + test '' = '' + test '' = 1 + test -d /home/mike/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6 + mkdir -p /home/mike/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6 mkdir: cannot create directory `/home/mike/crosstool-0.43/build': Permission denied [mike@localhost crosstool-0.43]$ su Password: [root@localhost crosstool-0.43]# ./arm.sh |
问题二:S3C2440芯片没有硬件浮点数(hardfloat),很多软件只能采用软件浮点数(softfloat)的编译器编译,恰巧现在高版本的u-boot只能采用支持softfloat的交叉编译器编译,否则会在编译结束前的链接那一步出现不支持softfloat的错误。
解决办法:要解决这个错误的唯一办法就是采用支持softfloat的交叉编译器编译uboot。下面来说一下制作softfloat的具体过程。
和上述制作交叉编译器过程一样,不同之处:1.修改arm.dat内容如下,参考arm-softfloat.dat内容修改。
KERNELCONFIG=`pwd`/arm.config TARGET=arm-softfloat-linux TARGET_CFLAGS="-O" GCC_EXTRA_CONFIG="--with-float=soft" GLIBC_EXTRA_CONFIG="--without-fp" |
编译完之后,会在/opt/crosstool/gcc-3.4.5-glibc-2.3.6/arm-softfloat-linux/bin生成支持softfloat的交叉编译器,如下所示。
arm-softfloat-linux-addr2line arm-softfloat-linux-g++ arm-softfloat-linux-ld arm-softfloat-linux-size arm-softfloat-linux-ar arm-softfloat-linux-gcc arm-softfloat-linux-nm arm-softfloat-linux-strings arm-softfloat-linux-as arm-softfloat-linux-gcc-3.4.5 arm-softfloat-linux-objcopy arm-softfloat-linux-strip arm-softfloat-linux-c++ arm-softfloat-linux-gccbug arm-softfloat-linux-objdump fix-embedded-paths arm-softfloat-linux-c++filt arm-softfloat-linux-gcov arm-softfloat-linux-ranlib arm-softfloat-linux-cpp arm-softfloat-linux-gprof arm-softfloat-linux-readelf |
文章来源:www.top-e.org
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。