This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Problems compiling glibc


Hello,
I am trying to compile the glibc 2.2.4 for an arm-linux configuration for 2.2.4 Kernel on a Linux host (2.2.14-5.0smp).
As our target does not support floating point instructions, I am trying to build a floating-point instructions free glibc.
At first, I tried a --without-fp configuration. But there were still floating point assembler instructions.
So I tried to build with the -msoft-option, added in my build command.
Hereafter are the steps I make:

1) Configure
The configuration phasis seems to be OK (with the following parameters)
configure \
        arm-linux \
        --build=i686-linux \
        --prefix=$PREFIX/arm-linux \
        --program-prefix=$PROGRAMDIR \
        --enable-add-ons \
        --enable-kernel=2.4.2 \
        --with-headers=$KERNELINCLUDES \
        --without-fp \
         -v 2>&1 | tee configure.out


2) Build
Then the make fails and I get a quite strange message while building the library.
My build command is:

make "CFLAGS+=-msoft-float" 2>&1 | tee make.out

The last lines of the output (make.out) is hereafter
...
...
rtld.c:142: warning: `_dl_start' defined but not used
/tmp/cciI3VLf.s: Assembler messages:
/tmp/cciI3VLf.s:5408: Error: invalid constant (ffffca60) after fixup
arm-linux-gcc -c  rtld.s -o /project/software/tools/gnu/src/build_arm_linux_glibc_Linux2.2.14-5.0smp/elf/rtld.os
rtld.s: Assembler messages:
rtld.s:5408: Error: invalid constant (ffffca60) after fixup
make[2]: *** [/project/software/tools/gnu/src/build_arm_linux_glibc_Linux2.2.14-5.0smp/elf/rtld.os] Error 1
make[2]: Leaving directory `/project/software/tools/gnu/src/glibc-2.2.4/elf'
make[1]: *** [elf/subdir_lib] Error 2
make[1]: Leaving directory `/project/software/tools/gnu/src/glibc-2.2.4'
make: *** [all] Error 2


Does anyone have an idea of what the problem is ?
To be sure, I restarted the generation of binutils, arm-linux-gcc from scratch, but I get the same errors.

When I build with the "CFLAGS+=-msoft-float" argument, it builds (but there are still fp instructions).
A funny thing is that the -msoft-float makes  -O2 and -g options disappear...
Is there a better way to give the compiler the -soft-float option ?
Or any other way to generate a really fp instructions-free glibc ?


Thanks and regards,

Cyril Germond
E-mail : cyril.germond@philips.com



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]