linux-mips-fnet
[Top] [All Lists]

failed to make libstdc++.so.2.8.0 - endianess issue

To: linux@engr.sig.com, linux-mips@fnet.fr
Subject: failed to make libstdc++.so.2.8.0 - endianess issue
From: Jun Sun <jsun@mvista.com>
Date: Thu, 04 May 2000 17:06:30 -0700
Sender: jsun@hermes.mvista.com
Since it looks not much hopeful to get glibc 2.1.2 working, I turned
back to egcs 1.0.3a/glibc 2.0.7 combo, mainly following Jay Carlson's
famous makefile.

However, I want to do the stage 2 egcs generation with shared libstdc++
library.  Here is the error I got :

....
mv tlist piclist
/root/rpm/BUILD/egcs-obj/gcc/xgcc -B/root/rpm/BUILD/egcs-obj/gcc/ -g -O2
-fno-implicit-templates  -EB -Wl,-soname,libstdc++.so.`echo 2.8.0 | sed
's/\([0-9][.][0-9]\).*/\1/'` -shared -o libstdc++.so.2.8.0 `cat piclist`
-lm
/root/target/mipsel_41xx/mipsel-linux/lib/libm.so: could not read
symbols: Invalid operation
collect2: ld returned 1 exit status
make[3]: *** [libstdc++.so.2.8.0] Error 1
make[3]: Leaving directory
`/root/rpm/BUILD/egcs-obj/mipsel-linux/eb/libstdc++'
make[2]: *** [multi-do] Error 1
make[2]: Leaving directory
`/root/rpm/BUILD/egcs-obj/mipsel-linux/libstdc++'
make[1]: *** [multi-all] Error 2
make[1]: Leaving directory
`/root/rpm/BUILD/egcs-obj/mipsel-linux/libstdc++'

----------

It turns out that libm.so is built for little endian and xgcc is
building for big endian libstdc++ (-EB).  I suppose I need to do either
one of the followings :

1) Not bother to generate big endian version at all - I don't need them;
or

2) generate little endian version of libm, and let xgcc pick it
correctly when -EB is passed.

Any idea how I should achieve them?  Thanks.

Jun

<Prev in Thread] Current Thread [Next in Thread>
  • failed to make libstdc++.so.2.8.0 - endianess issue, Jun Sun <=