Subject: Re: Make linux kernel error...

From: "Moya" <[email-masked]>
Date: Thu, 27 Apr 2000 09:38:33 +0800

Hi!

    Thanks Xavier. But after I changed the swapdata function,
    There were other problems. Errors as follows:

****************************************************************************
*****
armv4b-unknow-linux-ld: __gcc_bcmp.o: compiled for a little endian system
and ta
rget is big endian
File in wrong format: failed to merge target specific data of file
/usr/local/ar
m/lib/gcc-lib/armv4b-unknow-linux/2.95.2/libgcc.a(__gcc_bcmp.o)
armv4b-unknow-linux-ld: _ashldi3.o: compiled for a little endian system and
targ
et is big endian
File in wrong format: failed to merge target specific data of file
/usr/local/ar
m/lib/gcc-lib/armv4b-unknow-linux/2.95.2/libgcc.a(_ashldi3.o)
armv4b-unknow-linux-ld: _ashrdi3.o: compiled for a little endian system and
targ
et is big endian
****************************************************************************
*
  It seems that I made the gcc and glibc in the little endian mode??
    But actually, I don't know how to make gcc and glic in big endian mode.
    I have added extra parameter as "--enable-biendian" when I commanded

 "./configure --target=arm-linux --prefix=/usr/local/arm --enable-biendian".
    But it seems it doesn't work. Then I just tried to modify makefiles by
myself.
    With "-Wa,-EB -Wl,-EB -mbig-endian" to xgcc, "-EB" to linker, etc.
    But glibc's makefiles are so complicated. There are always have error
messages.
    I just gave up. Can anybody teach me the correct way to make gcc and
glibc in
    big endian mode?! Thank you so much.

****************************************************************************
         P.s.  My toolchains and linux version are:
                binutils-2.9.5.0.29.tar.gz
                gcc-2.95.2.tar.gz
                gcc-2.95.2-diff-991022.gz
                glibc-2.1.3.tar.gz
                glibc-linuxthreads-2.1.3.tar.gz
                glibc-crypt-2.1.3.tar.gz
                linux-2.2.12.tar.gz
                linux-2.2.12rmk1-cvs990915.diff.gz

unsubscribe: body of `unsubscribe linux-arm-kernel' to [email-masked]

---

From: Xavier DEBREUIL <[email-masked]>
Date: Thu, 27 Apr 2000 10:08:09 +0200

you have to build the libgcc for big endian mode so, normally, you just have to
add the -mbig-endian option to the GCC_FOR_TARGET options in the
/build-egcs/gcc/Makefile and in the /build-egcs/Makefile.

hope this help

---

From: Erik Mouw <[email-masked]>
Date: Thu Apr 27 15:04:48 +0200 (MDT) 2000

> /build-egcs/gcc/Makefile and in the /build-egcs/Makefile.

Have a look at the linux-arm mailing list archive at
ftp://ftp.arm.linux.org.uk/pub/armlinux/lists/linux-arm/ . David Meng
posted information on how to make a complete big endian toolchain plus
kernel. I think it is in the file archive.200003.

Erik

-- 
J.A.K. (Erik) Mouw, Information and Communication Theory Group, Department
of Electrical Engineering, Faculty of Information Technology and Systems,
Delft University of Technology, PO BOX 5031,  2600 GA Delft, The Netherlands
Phone: +31-15-2783635  Fax: +31-15-2781843  Email: [email-masked]
WWW: http://www-ict.its.tudelft.nl/~erik/

---

From: Wookey <[email-masked]>
Date: Fri, 28 Apr 2000 10:57:38 +0100 (BST)

> kernel. I think it is in the file archive.200003.

I've also put it on the web at
http://www.aleph1.co.uk/armlinux/develboards/bigendian.html

Wookey
-- 
Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK  Tel (00 44) 1223 811679
work: http://www.aleph1.co.uk/     play: http://www.chaos.org.uk/~wookey/