bug-glibc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Problem building glibc 2.3.1 on cygwin for arm cross compiler


From: George Najarian
Subject: Problem building glibc 2.3.1 on cygwin for arm cross compiler
Date: Thu, 21 Nov 2002 09:38:27 -0800

I have sucessfully built a toolchain for arm-linux using GCC 2.3.1, BINUTILS 
2.3.1, GLIBC
2.31 and
the 2.4.19-rmk4 kernel usng Mandrake 9.0 on a generic x86 machine, so I know the
procedure works, at
least.

I am unable to do the same build in the win32 cygwin environment. The build 
fails when
the i try to
configure the glibc library. If I try building the toolchain with 2.2.5, the 
configure
portion completes, but
fails when making the iconv directory.

here is a copy of my build script (assume that the binutils and c bootstrap 
completed
sucessfully):
#!/bin/bash -v
PREFIX=/tools/H-i686-pc-cygwin
KERNEL=/usr/src/arm/linux-2.4.19
GCCVER=3.2.1
GLIBCVER=2.3.1

HOST=
mkdir -p $PREFIX
if [ ! -f gcc-core-$GCCVER.tar.gz ]; then
  echo GCC $GCCVER seems to be missing
  exit 1
fi
rm -rf glibc-$GLIBCVER
tar zxf glibc-$GLIBCVER.tar.gz
tar -C glibc-$GLIBCVER -zxf glibc-linuxthreads-$GLIBCVER.tar.gz
pushd glibc-$GLIBCVER
perl -pi.orig -e
's/i386/arm*)\n\tlibc_cv_gcc_unwind_find_fde=yes\n\tarch_minimum_kernel=2.0.10\n\t;;\n
  
i386/' sysdeps/unix/sysv/linux/configure
#perl -pi.orig -e 's/weak_alias \(__old_sys_nerr/\/\/ $&/'
sysdeps/unix/sysv/linux/arm/errlist.c
./configure arm-linux --build=i686-pc-linux-gnu --with-headers=$KERNEL/include
--enable-add-ons --enable-shared --prefix=$PREFIX
make
make install
popd
pushd $PREFIX/arm-linux/lib
ln -s $PREFIX/lib/* .
popd
tar zxf gcc-core-$GCCVER.tar.gz
tar zxf gcc-g++-$GCCVER.tar.gz
pushd gcc-$GCCVER
./configure --target=arm-linux --prefix=$PREFIX $HOST 
--with-headers=$KERNEL/include 
perl -pi.orig -e 's/int namelen/unsigned int namelen/' 
libjava/java/net/natInetAddress.cc
make 
make install 
popd

Here is a copy of the logfile from the failed configure (2.3.1, failed portion 
only),
failure in ./configure:
mv -f sysdeps/../Versions.allT sysdeps/../Versions.all
LC_ALL=C gawk -v oldest_abi=default -f scripts/abi-versions.awk 
sysdeps/../Versions.all >
sysdeps/../abi-versions.hT
mv -f sysdeps/../abi-versions.hT sysdeps/../abi-versions.h
sed '/^[        ]*#/d;s/^[      ]*%/#/' csu/Versions assert/Versions 
ctype/Versions
locale/Versions intl/Versions catgets/Versions math/Versions setjmp/Versions
signal/Versions stdlib/Versions stdio-common/Versions libio/Versions 
malloc/Versions
string/Versions wcsmbs/Versions time/Versions dirent/Versions grp/Versions 
pwd/Versions
posix/Versions io/Versions termios/Versions resource/Versions misc/Versions
socket/Versions sysvipc/Versions gmon/Versions iconv/Versions wctype/Versions
shadow/Versions argp/Versions crypt/Versions linuxthreads/Versions nss/Versions
rt/Versions debug/Versions linuxthreads_db/Versions inet/Versions 
resolv/Versions
hesiod/Versions sunrpc/Versions nis/Versions streams/Versions login/Versions
dlfcn/Versions elf/Versions sysdeps/unix/sysv/linux/arm/Versions
sysdeps/unix/sysv/linux/Versions sysdeps/unix/sysv/Versions \
| arm-linux-gcc -E -undef  -Iinclude -I.   -Ilibio  -Isysdeps/arm/elf
-Ilinuxthreads/sysdeps/unix/sysv/linux -Ilinuxthreads/sysdeps/pthread 
-Isysdeps/pthread
-Ilinuxthreads/sysdeps/unix/sysv -Ilinuxthreads/sysdeps/unix 
-Ilinuxthreads/sysdeps/arm
-Isysdeps/unix/sysv/linux/arm -Isysdeps/unix/sysv/linux -Isysdeps/gnu
-Isysdeps/unix/common -Isysdeps/unix/mman -Isysdeps/unix/inet 
-Isysdeps/unix/sysv
-Isysdeps/unix/arm -Isysdeps/unix -Isysdeps/posix -Isysdeps/arm/fpu 
-Isysdeps/arm
-Isysdeps/wordsize-32 -Isysdeps/ieee754/flt-32 -Isysdeps/ieee754/dbl-64 
-Isysdeps/ieee754
-Isysdeps/generic/elf -Isysdeps/generic  -nostdinc -isystem
/tools/H-i686-pc-cygwin/lib/gcc-lib/arm-linux/3.2.1/include -isystem
/usr/src/arm/linux-2.4.19/include -D_LIBC_REENTRANT -include 
include/libc-symbols.h     
\
           -DASSEMBLER -x assembler-with-cpp - \
           > sysdeps/../Versions.v.iT
mv -f sysdeps/../Versions.v.iT sysdeps/../Versions.v.i
sed '/^[        ]*#/d;/^[       ]*$/d' sysdeps/../Versions.v.i >
sysdeps/../Versions.vT
mv -f sysdeps/../Versions.vT sysdeps/../Versions.v
( echo 'sysd-versions-subdirs = csu assert ctype locale intl catgets math 
setjmp signal
stdlib stdio-common libio malloc string wcsmbs time dirent grp pwd posix io 
termios
resource misc socket sysvipc gmon gnulib iconv iconvdata wctype manual shadow 
po argp
crypt linuxthreads nss localedata timezone rt conform debug linuxthreads_db 
inet resolv
hesiod sunrpc nis nscd streams login dlfcn elf sysdeps/arm/elf
linuxthreads/sysdeps/unix/sysv/linux linuxthreads/sysdeps/pthread 
sysdeps/pthread
linuxthreads/sysdeps/unix/sysv linuxthreads/sysdeps/unix 
linuxthreads/sysdeps/arm
sysdeps/unix/sysv/linux/arm sysdeps/unix/sysv/linux sysdeps/gnu 
sysdeps/unix/common
sysdeps/unix/mman sysdeps/unix/inet sysdeps/unix/sysv sysdeps/unix/arm 
sysdeps/unix
sysdeps/posix sysdeps/arm/fpu sysdeps/arm sysdeps/wordsize-32 
sysdeps/ieee754/flt-32
sysdeps/ieee754/dbl-64 sysdeps/ieee754 sysdeps/generic/elf sysdeps/generic' ; \
  cat sysdeps/../Versions.v \
  | LC_ALL=C gawk -v buildroot=sysdeps/../ -v defsfile=sysdeps/../Versions.all \
                    -v move_if_change='/bin/sh.exe scripts/move-if-change' \
                    -f scripts/versions.awk; \
) > sysdeps/../sysd-versionsT
version GLIBC_2.0 not defined for libc

GLIBC_2.0.mapT is built and growing in size until i abort the build.

Here is the equivalent portion from the configure of 2.2.5, which completed ok:
mv -f sysdeps/../Versions.allT sysdeps/../Versions.all
( echo 'sysd-versions-subdirs = csu assert ctype locale intl catgets math 
setjmp signal
stdlib stdio-common libio malloc string wcsmbs time dirent grp pwd posix io 
termios
resource misc socket sysvipc gmon gnulib iconv iconvdata wctype manual shadow 
po argp
crypt linuxthreads nss localedata timezone rt conform debug linuxthreads_db 
inet resolv
hesiod sunrpc nis nscd streams login dlfcn elf sysdeps/arm/elf
linuxthreads/sysdeps/unix/sysv/linux linuxthreads/sysdeps/pthread 
sysdeps/pthread
linuxthreads/sysdeps/unix/sysv linuxthreads/sysdeps/unix 
linuxthreads/sysdeps/arm
sysdeps/unix/sysv/linux/arm sysdeps/unix/sysv/linux sysdeps/gnu 
sysdeps/unix/common
sysdeps/unix/mman sysdeps/unix/inet sysdeps/unix/sysv sysdeps/unix/arm 
sysdeps/unix
sysdeps/posix sysdeps/arm/fpu sysdeps/arm sysdeps/wordsize-32 
sysdeps/ieee754/flt-32
sysdeps/ieee754/dbl-64 sysdeps/ieee754 sysdeps/generic/elf sysdeps/generic' ; \
  cat csu/Versions assert/Versions ctype/Versions locale/Versions intl/Versions
catgets/Versions math/Versions setjmp/Versions signal/Versions stdlib/Versions
stdio-common/Versions libio/Versions malloc/Versions string/Versions 
wcsmbs/Versions
time/Versions dirent/Versions grp/Versions pwd/Versions posix/Versions 
io/Versions
termios/Versions resource/Versions misc/Versions socket/Versions 
sysvipc/Versions
gmon/Versions iconv/Versions wctype/Versions shadow/Versions argp/Versions 
crypt/Versions
linuxthreads/Versions nss/Versions rt/Versions debug/Versions 
linuxthreads_db/Versions
inet/Versions resolv/Versions hesiod/Versions sunrpc/Versions nis/Versions
streams/Versions login/Versions dlfcn/Versions elf/Versions
sysdeps/unix/sysv/linux/arm/Versions sysdeps/unix/sysv/linux/Versions
sysdeps/unix/sysv/Versions \
  | sed '/^[    ]*#/d;s/^[      ]*%/#/' | arm-linux-gcc -E -undef -I. -Iinclude
-include sysdeps/../config.h -DASSEMBLER -x assembler-with-cpp - | sed '/^[
        ]*#/d;/^[       ]*$/d' \
  | LC_ALL=C gawk -v buildroot=sysdeps/../ -v defsfile=sysdeps/../Versions.all \
                    -v move_if_change='/bin/sh.exe scripts/move-if-change' \
                    -f scripts/versions.awk; \
) > sysdeps/../sysd-versionsT
mv -f sysdeps/../sysd-versionsT sysdeps/../sysd-versions

<build continues ...>

Other clues in the build that are wierd is the creation of a GLIBC_2.0.mapT and
sysd-versionsT file in the base glibc directory.
The build script for 2.3.1 hangs and the file size increases for the .mapT file 
until i
abort the build. Here is the contents of the mapT file:

{
 {
  global:
   
<with 300kb+ of spaces and returns following>

Can anybody provide any help with this? I am not a script expert and this 
problem is
really bugging me.

George Najarian
Systems Engineer
address@hidden







reply via email to

[Prev in Thread] Current Thread [Next in Thread]