按照书上和网上的一些资料在Redhat9下重新生成交叉编译器gcc-3.4.5-glibc-2.3.6,但我编译都快3,4个小时了,还没编译完,就是不停的在root和我自己建立的用户之间在切换,然后编译,截取中间一部分过程如下:
[liwen@friendlyarmcrosstool-0.43]$ ./demo-arm-softfloat.sh+ TARBALLS_DIR=/home/liwen/liwen/mygcc-tool
+ RESULT_TOP=/opt/crosstool
+ export TARBALLS_DIR RESULT_TOP
+ GCC_LANGUAGES=c,c++
+ export GCC_LANGUAGES
+ mkdir -p /opt/crosstool
++ cat arm-softfloat.dat gcc-3.4.5-glibc-2.3.6.dat
+ eval 'KERNELCONFIG=`pwd`/arm.config' TARGET=arm-linux 'TARGET_CFLAGS="-O"'
'GCC_EXTRA_C' 'GLIBC_EXTRA_C'
BINUTILS_DIR=binutils-2.15 GCC_DIR=gcc-3.4.5 GLIBC_DIR=glibc-2.3.6
LINUX_DIR=linux-2.6.8 LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0
GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.6 sh all.sh --notest
+++ pwd
++ KERNELCONFIG=/opt/crosstool/crosstool-0.43/arm.config
++ TARGET=arm-linux
++ TARGET_CFLAGS=-O
++ GCC_EXTRA_CONFIG=--with-float=soft
++ GLIBC_EXTRA_CONFIG=--without-fp
++ BINUTILS_DIR=binutils-2.15
++ GCC_DIR=gcc-3.4.5
++ GLIBC_DIR=glibc-2.3.6
++ LINUX_DIR=linux-2.6.8
++ LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0
++ GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.6
++ 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
GLIBC_ADDON_OPTIONS not set, so building all glibc add-on's
+ TOOLCOMBO=gcc-3.4.5-glibc-2.3.6
++ pwd
+
BUILD_DIR=/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6
++ pwd
+ TOP_DIR=/opt/crosstool/crosstool-0.43
+ test -z ''
+ SRC_DIR=/opt/crosstool/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/liwen/liwen/mygcc-tool
+ 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 /opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6
+ mv /opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6
/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6.del.17675
mv:无法移动'/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6'至'/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6.del.17675':权限不够
[liwen@friendlyarm crosstool-0.43]$ su
Password:
[root@friendlyarm crosstool-0.43]# ./demo-arm-softfloat.sh+ TARBALLS_DIR=/root/liwen/mygcc-tool
+ RESULT_TOP=/opt/crosstool
+ export TARBALLS_DIR RESULT_TOP
+ GCC_LANGUAGES=c,c++
+ export GCC_LANGUAGES
+ mkdir -p /opt/crosstool
++ cat arm-softfloat.dat gcc-3.4.5-glibc-2.3.6.dat
+ eval 'KERNELCONFIG=`pwd`/arm.config' TARGET=arm-linux 'TARGET_CFLAGS="-O"'
'GCC_EXTRA_C' 'GLIBC_EXTRA_C'
BINUTILS_DIR=binutils-2.15 GCC_DIR=gcc-3.4.5 GLIBC_DIR=glibc-2.3.6
LINUX_DIR=linux-2.6.8 LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0
GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.6 sh all.sh --notest
+++ pwd
++ KERNELCONFIG=/opt/crosstool/crosstool-0.43/arm.config
++ TARGET=arm-linux
++ TARGET_CFLAGS=-O
++ GCC_EXTRA_CONFIG=--with-float=soft
++ GLIBC_EXTRA_CONFIG=--without-fp
++ BINUTILS_DIR=binutils-2.15
++ GCC_DIR=gcc-3.4.5
++ GLIBC_DIR=glibc-2.3.6
++ LINUX_DIR=linux-2.6.8
++ LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0
++ GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.6
++ 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
GLIBC_ADDON_OPTIONS not set, so building all glibc add-on's
+ TOOLCOMBO=gcc-3.4.5-glibc-2.3.6
++ pwd
+
BUILD_DIR=/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6
++ pwd
+ TOP_DIR=/opt/crosstool/crosstool-0.43
+ test -z ''
+ SRC_DIR=/opt/crosstool/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=/root/liwen/mygcc-tool
+ 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 /opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6
+ mv /opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6
/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6.del.17720
+ rm -rf
/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6.del.17720+
mkdir -p /opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6
+ sh getandpatch.sh
+ test -z ''
+ test -z ''
+ test -z binutils-2.15
+ test -z ''
+ test -z /opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6
+ test -z gcc-3.4.5
+ test -z ''
+ echo 'GCC_CORE_DIR not set, so using gcc-3.4.5 for bootstrap compiler'
GCC_CORE_DIR not set, so using gcc-3.4.5 for bootstrap compiler
+ test -z ''
+ echo 'GDB_DIR not set, so not downloading gdb sources'
GDB_DIR not set, so not downloading gdb sources
+ test '' = ''
+ test -z glibc-2.3.6
+ test -z linux-libc-headers-2.6.12.0
+ test -z linux-2.6.8
+ test -z glibc-linuxthreads-2.3.6
+ test -z /root/liwen/mygcc-tool
+ test -z ''
+ test -z ''
+ VERBOSE=-v
+ PATCHFAILMSGS=^No file to patch. Skipping patch.|^Hunk .* FAILED at
+ LANG=C
+ export LANG
+ TOP_DIR=/opt/crosstool/crosstool-0.43
+ mkdir -p /root/liwen/mygcc-tool
+ test -z ''
+ test -n ''
+ test -n ''
+ test '' = ''
+ getUnpackAndPatch
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gzftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz+ set -x
+ exists=
++ echo
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2++ sed 's,.*/,,;'
+ ARCHIVE_NAME=glibc-2.3.6.tar.bz2
++ echo glibc-2.3.6.tar.bz2
++ sed 's,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;'
+ BASENAME=glibc-2.3.6
+ test -z ''
+ test -d
/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6/glibc-2.3.6
+ test -f /root/liwen/mygcc-tool/glibc-2.3.6.tar.bz2
++ echo
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz++ sed 's,.*/,,;'
+ ARCHIVE_NAME=glibc-2.3.6.tar.gz
++ echo glibc-2.3.6.tar.gz
++ sed 's,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;'
+ BASENAME=glibc-2.3.6
+ test -z ''
+ test -d
/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6/glibc-2.3.6
+ test -f /root/liwen/mygcc-tool/glibc-2.3.6.tar.gz
++ echo
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2++ sed 's,.*/,,;'
+ ARCHIVE_NAME=glibc-2.3.6.tar.bz2
++ echo glibc-2.3.6.tar.bz2
++ sed 's,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;'
+ BASENAME=glibc-2.3.6
+ test -z ''
+ test -d
/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6/glibc-2.3.6
+ test -f /root/liwen/mygcc-tool/glibc-2.3.6.tar.bz2
++ echo
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz++ sed 's,.*/,,;'
+ ARCHIVE_NAME=glibc-2.3.6.tar.gz
++ echo glibc-2.3.6.tar.gz
++ sed 's,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;'
+ BASENAME=glibc-2.3.6
+ test -z ''
+ test -d
/opt/crosstool/crosstool-0.43/build/arm-linux/gcc-3.4.5-glibc-2.3.6/glibc-2.3.6
+ test -f /root/liwen/mygcc-tool/glibc-2.3.6.tar.gz
+ test x = x
++ echo
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2++ sed 's,.*/,,;'
+ ARCHIVE_NAME=glibc-2.3.6.tar.bz2
++ echo glibc-2.3.6.tar.bz2
++ sed 's,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;'
+ BASENAME=glibc-2.3.6
+ downloadFile
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2+ echo downloadFile
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2downloadFile
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2+ test -n
++ basename
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2+ test -f /glibc-2.3.6.tar.bz2
+ test -z ''
+ wget --tries=5 -P /root/liwen/mygcc-tool -c
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2--22:00:01--
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2 => `/root/liwen/mygcc-tool/glibc-2.3.6.tar.bz2'
Resolving
ftp.gnu.org... failed: Host not found.
+ wget --tries=5 --passive-ftp -P /root/liwen/mygcc-tool -c
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2--22:00:01--
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.bz2 => `/root/liwen/mygcc-tool/glibc-2.3.6.tar.bz2'
Resolving
ftp.gnu.org... failed: Host not found.
++ echo
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz++ sed 's,.*/,,;'
+ ARCHIVE_NAME=glibc-2.3.6.tar.gz
++ echo glibc-2.3.6.tar.gz
++ sed 's,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;'
+ BASENAME=glibc-2.3.6
+ downloadFile
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz+ echo downloadFile
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gzdownloadFile
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz+ test -n
++ basename
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz+ test -f /glibc-2.3.6.tar.gz
+ test -z ''
+ wget --tries=5 -P /root/liwen/mygcc-tool -c
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz--22:00:03--
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz => `/root/liwen/mygcc-tool/glibc-2.3.6.tar.gz'
Resolving
ftp.gnu.org... failed: Host not found.
+ wget --tries=5 --passive-ftp -P /root/liwen/mygcc-tool -c
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz--22:00:03--
ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz => `/root/liwen/mygcc-tool/glibc-2.3.6.tar.gz'
Resolving
ftp.gnu.org... failed: Host not found.
++ echo
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2++ sed 's,.*/,,;'
+ ARCHIVE_NAME=glibc-2.3.6.tar.bz2
++ echo glibc-2.3.6.tar.bz2
++ sed 's,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;'
+ BASENAME=glibc-2.3.6
+ downloadFile
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2+ echo downloadFile
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2downloadFile
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2+ test -n
++ basename
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2+ test -f /glibc-2.3.6.tar.bz2
+ test -z ''
+ wget --tries=5 -P /root/liwen/mygcc-tool -c
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2--22:00:04--
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2 => `/root/liwen/mygcc-tool/glibc-2.3.6.tar.bz2'
Resolving gcc.gnu.org... failed: Host not found.
+ wget --tries=5 --passive-ftp -P /root/liwen/mygcc-tool -c
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2--22:00:05--
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.bz2 => `/root/liwen/mygcc-tool/glibc-2.3.6.tar.bz2'
Resolving gcc.gnu.org... failed: Host not found.
++ echo
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz++ sed 's,.*/,,;'
+ ARCHIVE_NAME=glibc-2.3.6.tar.gz
++ echo glibc-2.3.6.tar.gz
++ sed 's,\.tar\.gz$,,;s,\.tar\.bz2$,,;s,\.tgz,,;'
+ BASENAME=glibc-2.3.6
+ downloadFile
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz+ echo downloadFile
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gzdownloadFile
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz+ test -n
++ basename
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz+ test -f /glibc-2.3.6.tar.gz
+ test -z ''
+ wget --tries=5 -P /root/liwen/mygcc-tool -c
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz--22:00:05--
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz => `/root/liwen/mygcc-tool/glibc-2.3.6.tar.gz'
Resolving gcc.gnu.org... failed: Host not found.
+ wget --tries=5 --passive-ftp -P /root/liwen/mygcc-tool -c
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz--22:00:06--
ftp://gcc.gnu.org/pub/glibc/releases/glibc-2.3.6.tar.gz => `/root/liwen/mygcc-tool/glibc-2.3.6.tar.gz'
Resolving gcc.gnu.org... failed: Host not found.
+ test -f /root/liwen/mygcc-tool/glibc-2.3.6.tar.gz
+ abort 'file glibc-2.3.6.tar.gz not found'
+ echo file glibc-2.3.6.tar.gz not found
file glibc-2.3.6.tar.gz not found
+ exec false
[root@friendlyarm crosstool-0.43]#su liwen我就这样不停的切换,不知道这样做是对还是错,编译的时间太长了,感觉不对劲了,请高手指点指点,谢谢啦!