Re: arm-linux-gnueabi-gcc intended target system?
+++ email@example.com [2010-03-21 01:24 +0200]:
> I have succesfully installed the crosscompiling toolchain and have a small program that needs to be run on an ipaq H3600. I think that is a rather old distribution from handhelds.org:
> uname -a
> Linux h3600 2.4.19-rmk6-pxa1-hh37 #1 Thu Apr 7 14:15:23 CEST 2005 armv4l unknow
> When I crosscompile my program like this:
> make CC="arm-linux-gnueabi-gcc -march=armv4 -mcpu=strongarm1100" aptering
> it compiles fine, but once I move the binary file to the ipaq it is not
> granqvis@h3600:~$ ls -l
> -rwx--x--x 1 granqvis granqvis 29243 Mar 21 00:34 aptering
> lrwxrwxrwx 1 root root 22 Nov 15 2025 ramdisk -> /mnt/ram/home
> granqvis@h3600:~$ ./aptering
> -sh: ./aptering: not found
> Am I using the wrong toolchain here or what might be the problem?
yes. That very old familiar handhelds distro is the old ARM ABI.
arm-linux-gnueabi toolchain is new arm EABI. That are not compatible.
> A long time ago I was able to crosscompile and succesfully run the same program.
> Unfortunately that crosscompiler has vanished since. From .bash_history
> I could find that I used to compile with:
> make CC=arm-linux-gcc aptering
This is 'arm-linux-gnu-gcc' in new nomenclature. We still have that
toolchain for lenny, although an older one (2.95 vintage) might well suit
your distro better, as a toolchain implies a glibc version and you may
still have compatibility issues using gcc-4.1 to make binaries fro
handhelds familiar. We have been doing that for a long time using etch
toolchains and it largely works although libgcc1 versiosing can be
tiresome (you need to force-install things, but they still work).
> But as told before, that crosscompiler is not present anymore.
Indeed, it has been renamed to arm-linux-gnu-gcc.
Principal hats: iEndian - Balloonboard - Toby Churchill - Emdebian