Subject: How to config Makefile in binutils-2.9.5.0.42.

From: "cschiu" <[email-masked]>
Date: Thu, 8 Jun 2000 19:18:35 -0000

Hello all,

I want to build binutils-2.9.5.0.42 for my ARM target with cpu architecture
v4 ,big-endian mode.
So I follow the tool chain guide from Chris Rutter , configure the target
with "armv4b" .
But the script can't recognize the target name ?Why ?
How can I modify the target that can fit my need.

Best regards,
Cschiu

unsubscribe: body of `unsubscribe linux-arm' to [email-masked]
++        Please use [email-masked] for           ++
++                        kernel-related discussions.                      ++

---

From: Philip Blundell <[email-masked]>
Date: Thu, 08 Jun 2000 19:58:31 +0100

>How can I modify the target that can fit my need.

No released version of binutils understands big-endian ARM GNU/Linux targets.  
It's a pretty simple change to the config scripts to add this, or you can just 
remember to always use -EB (put it in your gcc specs file).

p.

---

From: "cschiu" <[email-masked]>
Date: Fri, 9 Jun 2000 18:04:08 -0000

Hello all,

Thanks for Philip help , I have fixed the problem,but I meet another
problem.
Now I want to build glibc-2.1.3 library to big-endian mode , so I add option
"-Wl,-EB".
The following lists show the errors:
I really don't understand why linker want to reference to libgcc.a.
How can I fix this problem ?

arm-linux-gcc -Wl,-EB  -nostdlib -nostartfiles  -r -o librtld.os '-Wl,-('
dl-allobjs.os ../libc_pic.a -lgcc '-Wl,-)'
/usr/arm-linux/bin/ld: _divsi3.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
/usr/lib/gcc-lib/arm-linux/2.95.2/libgcc.a(_divsi3.o)
/usr/arm-linux/bin/ld: _dvmd_lnx.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
/usr/lib/gcc-lib/arm-linux/2.95.2/libgcc.a(_dvmd_lnx.o)
/usr/arm-linux/bin/ld: _udivsi3.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
/usr/lib/gcc-lib/arm-linux/2.95.2/libgcc.a(_udivsi3.o)
/usr/arm-linux/bin/ld: _umodsi3.o: compiled for a little endian system and
target is big endian
File in wrong format: failed to merge target specific data of file
/usr/lib/gcc-lib/arm-linux/2.95.2/libgcc.a(_umodsi3.o)
collect2: ld returned 1 exit status
make: *** [librtld.os] Error

---

From: Xavier DEBREUIL <[email-masked]>
Date: Fri, 09 Jun 2000 13:03:03 +0000

libgcc.a is compiled when egcs is compiled.
I did build the kernel for uclinux for a big endian arm and was compelled to
rebuild the egcs the following way ; it may not be correct but I did not find
any other way to succeed :
mkdir build-egcs
cd build-egcs
../egcs/configure --target=... -prefix=...

then I edit the /build-egcs/Makefile and /build-egcs/gcc/Makefile where I modify
GCC_FOR_TARGET with adding -mbig-endian option

make LANGUAGES="c c++"
make install

If there is a proper way to do it, please advise

Thank you

---

From: Scott Bambrough <[email-masked]>
Date: Fri, 09 Jun 2000 10:16:53 -0400

Actually it sounds like gcc needs to be multilibbed to build two more versions
of libgcc.a.

1) big endian (-EB)
2) big endian, soft-float (-EB -msoft-float)

It currently only builds the little endian versions.

Scott

-- 
Scott Bambrough - Software Engineer
REBEL.COM    http://www.rebel.com
NetWinder    http://www.netwinder.org

---

From: Philip Blundell <[email-masked]>
Date: Fri, 09 Jun 2000 21:03:41 +0100

>2) big endian, soft-float (-EB -msoft-float)

Agreed.

p.

---

From: Harsha Sanjeewa <[email-masked]>
Date: Fri, 16 Jun 2000 09:38:10 +0600

Hi,
I am testing the new kernel 2.4 with Brutus board.
When I ran top it seems the  kswapd takes about
60% of the kernel time. The response time is also 
extreamly so. Is there a way to reduce the CPU usage
by kswapd?

Regards,
Harsha

---

From: Russell King - ARM Linux Admin <[email-masked]>
Date: Fri, 16 Jun 2000 07:54:34 +0100 (BST)

> extreamly so. Is there a way to reduce the CPU usage

Some questions/pointers:

1. its a kernel question, so should be on
   [email-masked] instead
2. you don't say exactly which version of the 2.4 kernel you're using
3. certain versions do have known problems in that area causing high
   kswapd utilisation.
4. you don't say if you actually have a swap partition, how much RAM
   you have, what you are doing when this occured and the memory stats
   from /proc/meminfo.
   _____
  |_____| ------------------------------------------------- ---+---+-
  |   |        Russell King       [email-masked]      --- ---
  | | | |            http://www.arm.linux.org.uk/            /  /  |
  | +-+-+                                                     --- -+-
  /   |               THE developer of ARM Linux              |+| /|\
 /  | | |                                                     ---  |
    +-+-+ -------------------------------------------------  /\\\  |