[GRASS5] Script to build babyGRASS for handhelds

Markus Neteler neteler at itc.it
Fri May 3 11:27:47 EDT 2002


On Thu, May 02, 2002 at 05:36:39PM -0700, Eric G. Miller wrote:
> FYI, I did a little poking around and see there are two flavors of ELF
> binaries for ARM (arm-elf, arm-linuxelf).  Maybe building the wrong
> kind?

Thanks for the hint. We have installed "gdb" now. It reports (while
running!):
   This GDB was configured as "armv4l-unknown-linux-gnu"...

Looking at a particular file on the skiffcluster we get:
 file dist.armv4l-unknown-linux-gnu/bin/g.remove
  dist.armv4l-unknown-linux-gnu/bin/g.remove: ELF 32-bit LSB executable,
  Advanced RISC Machines ARM, version 1, dynamically linked (uses shared
  libs), not stripped

But, when running 'g.remove' on gdb on our iPAQ, we do not get
debugging symbols (although -g flag, no stripping):

gdb /grass/dist.armv4l-unknown-linux-gnu/bin/g.remove
GNU gdb 5.0
[...]
This GDB was configured as "armv4l-unknown-linux-gnu"...
(no debugging symbols found)...

This is somewhat unusual (I guess I am overseeing something).
Next shows how we configured it:

CFLAGS="-g" LDFLAGS=""  ./configure [...switching off everything]

checking host system type... armv4l-unknown-linux-gnu
checking for gcc... gcc
checking whether the C compiler (gcc -g ) works... yes
checking whether the C compiler (gcc -g ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking for full floating-point support... yes
[...]
creating ./config.status
creating Makefile
creating src/CMD/head/head
creating src/CMD/lists/optional
creating mk/Makefile
creating src/include/version.h
creating src/include/winname.h
creating src/include/config.h
Copying config.status to config.status.armv4l-unknown-linux-gnu

GRASS is now configured for armv4l-unknown-linux-gnu

  Source directory:          /home/guest/stankovic at itc.it/babyGRASS_src
  Build directory:           /home/guest/stankovic at itc.it/babyGRASS_src
  Installation directory:    ./grass5
  C compiler:                gcc -g
[...]

Why don't we get debugging symbols (yes, I was cleaning all binaries
before re-compilation)?

---------------------
Then: trying to run a module on skiffcluster is working:
dist.armv4l-unknown-linux-gnu/bin/g.remove
ERROR: GISBASE not set
System: uname -a
Linux skiffcluster4.handhelds.org 2.4.0-test1-ac7-rmk1-crl2 #15 Fri Jun 16
11:24:53 EDT 2000 armv4l unknown

While the copied binary crashes on our iPAQ:
/grass/dist.armv4l-unknown-linux-gnu/etc/bin/cmd/g.remove
Segmentation fault
System: uname -a
uname -a
Linux familiar 2.4.16-rmk1 #5 Thu Jan 31 12:06:57 EST 2002 armv4l unknown

Perhaps Eric is right and both Linux versions differ slightly.
But we compiled, transfered and run another program successfully.
So it looks like a GRASS problem.

Not yet giving up,
 Markus
 Jan



More information about the grass-dev mailing list