public inbox for java@gcc.gnu.org
 help / color / mirror / Atom feed
* gcc crosstool chain with soft floating point support for arm9 +  java
@ 2008-11-27 13:42 kpremendra
  2008-11-27 14:28 ` Andrew Haley
  0 siblings, 1 reply; 2+ messages in thread
From: kpremendra @ 2008-11-27 13:42 UTC (permalink / raw)
  To: java


Hi 

I am using crosstool 0.43 to generate crosstool for arm9 with soft float,
with c,c++,java 
languages support.


demo-arm-softfloat.sh  file is as below 

set -ex
TARBALLS_DIR=$HOME/downloads
RESULT_TOP=/opt/crosstool
export TARBALLS_DIR RESULT_TOP
GCC_LANGUAGES="c,c++,java"
export GCC_LANGUAGES

mkdir -p $RESULT_TOP

eval `cat arm-softfloat.dat gcc-3.3.6-glibc-2.3.2.dat` sh all.sh --notest

echo Done.




arm-softfloat.dat file has 

KERNELCONFIG=`pwd`/arm.config
TARGET=arm-softfloat-linux-gnu
TARGET_CFLAGS="-O"
GCC_EXTRA_CONFIG="--with-float=soft"
GCC_CORE_EXTRA_CONFIG="--with-float=soft"
GLIBC_EXTRA_CONFIG=" --without-fp"
GLIBC_EXTRA_CC_ARGS="-msoft-float"



gcc-3.3.6-glibc-2.3.2.dat`  file has 

BINUTILS_DIR=binutils-2.15
GCC_DIR=gcc-3.3.6
GLIBC_DIR=glibc-2.3.2
GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.2
LINUX_DIR=linux-2.6.9
LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0



And getting the below error 


arm-softfloat-linux-gnu-ranlib
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/libc_pic.a
arm-softfloat-linux-gnu-gcc -msoft-float   -nostdlib -nostartfiles -r -o
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.map.o
'-Wl,-('
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/dl-allobjs.os
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/libc_pic.a
-lgcc '-Wl,-)'
-Wl,-Map,/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.mapT
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
ERROR:
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_udivsi3.o)
uses hardware FP, whereas
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.map.o
uses software FP
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
failed to merge target specific data of file
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_udivsi3.o)
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
ERROR:
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_divsi3.o)
uses hardware FP, whereas
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.map.o
uses software FP
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
failed to merge target specific data of file
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_divsi3.o)
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
ERROR:
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_umodsi3.o)
uses hardware FP, whereas
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.map.o
uses software FP
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
failed to merge target specific data of file
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_umodsi3.o)
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
ERROR:
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_dvmd_lnx.o)
uses hardware FP, whereas
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.map.o
uses software FP
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
failed to merge target specific data of file
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_dvmd_lnx.o)
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
ERROR:
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_muldi3.o)
uses hardware FP, whereas
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.map.o
uses software FP
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
failed to merge target specific data of file
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_muldi3.o)
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
ERROR:
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_ashldi3.o)
uses hardware FP, whereas
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.map.o
uses software FP
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/../../../../arm-softfloat-linux-gnu/bin/ld:
failed to merge target specific data of file
/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/gcc-core-prefix/lib/gcc-lib/arm-softfloat-linux-gnu/3.3.6/libgcc.a(_ashldi3.o)
collect2: ld returned 1 exit status
make[2]: ***
[/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/build-glibc/elf/librtld.map]
Error 1
make[2]: Leaving directory
`/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/glibc-2.3.2/elf'
make[1]: *** [elf/subdir_lib] Error 2
make[1]: Leaving directory
`/home/developer/crosstool-0.43/build/arm-softfloat-linux-gnu/gcc-3.3.6-glibc-2.3.2/glibc-2.3.2'
make: *** [all] Error 2
[developer@localhost crosstool-0.43]$



I have tried gcc-4.0.1 gcc-4.1.2 gcc-3.3.6 gcc-3.4.5 
for all of them i get , this kind of error , where in part of the librarries
get compiled 
for soft flaot and some part gets compiled with hard floating point.

Can u please guide me which all flags i missing for the compilation.

-- 
View this message in context: http://www.nabble.com/gcc-crosstool-chain-with-soft-floating-point-support-for-arm9-%2B-java-tp20719472p20719472.html
Sent from the gcc - java mailing list archive at Nabble.com.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: gcc crosstool chain with soft floating point support for arm9  +  java
  2008-11-27 13:42 gcc crosstool chain with soft floating point support for arm9 + java kpremendra
@ 2008-11-27 14:28 ` Andrew Haley
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Haley @ 2008-11-27 14:28 UTC (permalink / raw)
  To: kpremendra; +Cc: java

kpremendra wrote:

> I am using crosstool 0.43 to generate crosstool for arm9 with soft float,
> with c,c++,java 
> languages support.

Firstly, gcj was not supported on ARM before gcc 4.3.  It's only supported
on the new EABI, arm-linux-gnueabi.  There is arm-linux-gnu, the old one,
and arm-linux-gnueabi, the new one.  The old one defaults to soft float, the
new one hard float.

So, are you building arm-linux-gnu or arm-linux-gnueabi?

This is my configury for X-arm gcc with gcj:

/home/aph/gcc/trunk/configure --prefix=/local/x-arm-gcc/install \
--with-sysroot=/local/x-arm-gcc/rootfs-f8 --disable-libssp \
--disable-libgomp --disable-libmudflap --enable-libgcj \
--disable-bootstrap --disable-multilib --disable-static \
--disable-sjlj-exceptions --target=arm-linux-gnueabi \
--enable-java-awt=gtk \
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.3-1.5.0.0/jre \
--enable-languages=c,c++,java

This should get you a cross-compiler compatible with an EABI kernel.

Andrew.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-11-27 14:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-11-27 13:42 gcc crosstool chain with soft floating point support for arm9 + java kpremendra
2008-11-27 14:28 ` Andrew Haley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).