This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See crosstool-NG for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: crt0.o from newlib has ARM32-only routines when building gcc for arm-eabi


On Tue, Jun 19, 2012 at 1:18 PM, David Fernandez
<david.fernandez.work@googlemail.com> wrote:
>>>> On 19/06/12 01:47, Khem Raj wrote:
>>>>>
>>>>>
>>>>> On Monday, June 18, 2012, David Fernandez
>>>>> <david.fernandez.work@googlemail.com
>>>>> <mailto:david.fernandez.work@googlemail.com>> wrote:
>>>>> > On 18/06/12 23:25, David Fernandez wrote:
>>>>> >> On 18/06/12 22:42, Khem Raj wrote:
>>>>> >>> On Mon, Jun 18, 2012 at 2:07 PM, David Fernandez
>>>>> >>> <david.fernandez.work@googlemail.com
>>>>> <mailto:david.fernandez.work@googlemail.com>> wrote:
>>>>> >>>> Is that expected? As crt0.S in newlib has #ifdefs to choose the
>>>>> >>>> right
>>>>> >>>> thumb-2, thumb or ARM specific assembler depending on the
>>>>> predefined macros.
>>>>> >>> look for compiler cmdline when this was compiled. Did you use
>>>>> --with-mode=thumb
>>>>> >>> when configuring the compiler ?
>>>>> >> Gosh! I didn't. No idea that it needed a special parameter to have
>>>>> thumb
>>>>> >> only mode... even for a CPU that will refuse to compile without
>>>>> "-mthumb"...
>>>>> >>
>>>>> >> Thanks for the tip. I'll try that soon.
>>>>> >>
>>>>> >> Cheers
>>>>> > It fails if I use "--with-mode=thumb"
>>>>> >
>>>>> > The configuration goes ok (I use "configure --target=arm-eabi
>>>>> > --enable-languages=c,c++ --with-gnu-as --with-gnu-ld --with-newlib
>>>>> > --with-gxx-include-dir=/usr/local/arm-eabi/include --with-mode=thumb
>>>>> > -v"), but when doing "make -w all", it fails when it tries multilib:
>>>>> >
>>>>> > ...
>>>>> > make[2]: Leaving directory
>>>>> > `/home/user/rpmbuild/BUILDROOT/arm-eabi/gcc-4.7.1/gcc'
>>>>> > Checking multilib configuration for libgcc...
>>>>> > mkdir -p -- arm-eabi/libgcc
>>>>> > ...
>>>>> > checking for suffix of object files... o
>>>>> > ...
>>>>> > configure: error: cannot compute suffix of object files: cannot compile
>>>>> > See `config.log' for more details.
>>>>> > make[1]: *** [configure-target-libgcc] Error 1
>>>>> > make[1]: Leaving directory
>>>>> > `/home/user/rpmbuild/BUILDROOT/arm-eabi/gcc-4.7.1'
>>>>> > make: *** [all] Error 2
>>>>> > make: Leaving directory
>>>>> `/home/user/rpmbuild/BUILDROOT/arm-eabi/gcc-4.7.1'
>>>>> >
>>>>> > Any ideas?
>>>>> >
>>>>> >
>>>>>
>>>>> You have to show config.log from libgcc build tree
>>>> Attached
>>>>
>>> On Tue, Jun 19, 2012 at 3:19 AM, Khem Raj <raj.khem@gmail.com> wrote:
>>>
>>> Add --disable-decimal-float to gcc configure
>>>
>>>
>> That does not fix the problem... same error. I'm attaching the config.log.
>>
> I'm attaching the config log in fpu/libgcc too.
>
> Seems that the option you proposed disables decimal floating point,
> but does not avoid compiling libgcc for fpu.

I've tried --disable-fpu instead of --disable-decimal-float, but it
fails when building libgloss (I guess the one from newlib):

...
make[5]: Leaving directory
`/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/thumb/libgloss/libnosys'
make[4]: Leaving directory
`/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/thumb/libgloss'
make[4]: Entering directory
`/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/fpu/libgloss'
make[5]: Entering directory
`/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/fpu/libgloss/arm'
/home/wifi/builds/arm-eabi/gcc-4.7.0/./gcc/xgcc
-B/home/wifi/builds/arm-eabi/gcc-4.7.0/./gcc/ -nostdinc
-B/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/newlib/ -isystem
/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/newlib/targ-include
-isystem /home/wifi/src/gcc-4.7.0/newlib/libc/include
-B/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/libgloss/arm
-L/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/libgloss/libnosys
-L/home/wifi/src/gcc-4.7.0/libgloss/arm
-B/usr/local/arm-none-eabi/bin/ -B/usr/local/arm-none-eabi/lib/
-isystem /usr/local/arm-none-eabi/include -isystem
/usr/local/arm-none-eabi/sys-include    -g -O2 -O2 -I.
-I/home/wifi/src/gcc-4.7.0/libgloss/arm/.. -c -g -O2  -mfloat-abi=hard
/home/wifi/src/gcc-4.7.0/libgloss/arm/linux-crt0.c
/home/wifi/src/gcc-4.7.0/libgloss/arm/linux-crt0.c: In function ‘_main’:
/home/wifi/src/gcc-4.7.0/libgloss/arm/linux-crt0.c:37:1: sorry,
unimplemented: Thumb-1 hard-float VFP ABI
make[5]: *** [linux-crt0.o] Error 1
make[5]: Leaving directory
`/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/fpu/libgloss/arm'
make[4]: *** [stmp-bsp] Error 2
make[4]: Leaving directory
`/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/fpu/libgloss'
make[3]: *** [multi-do] Error 1
make[3]: Leaving directory
`/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/libgloss'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/home/wifi/builds/arm-eabi/gcc-4.7.0/arm-none-eabi/libgloss'
make[1]: *** [all-target-libgloss] Error 2
make[1]: Leaving directory `/home/wifi/builds/arm-eabi/gcc-4.7.0'
make: *** [all] Error 2
make: Leaving directory `/home/wifi/builds/arm-eabi/gcc-4.7.0'

If anybody knows anything, It'll be much appreciated.

--
For unsubscribe information see http://sourceware.org/lists.html#faq


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