Re: ARM Updates
- Posted by coconut Apr 09, 2013
- 2403 views
Matt, No luck with your build neither with mine on EfikaMX (I used linaro building tools).
I missed this the first time I read it. You're just trying to run Matt's eubins right? Where does linaro come into play?
When trying to run eui the loader complain the file doesn't exist although "file eui" report
jacques@efikamx:~/Téléchargements/euphoria-4.1.0-Linux-ARM/bin$ file eui eui: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, not stripped
Don't know if it is difference between freeScale imx515 and BMC2708 or something related to OS. Is this a problem with different version of kernel? or libc? I don't know much about it.
Actually, I find it strange that the softfloat version on the wiki failed. Looking it up, it looks like it has the same type of processor (ARM Cortex-A8) that my Nook Color has. http://wiki.debian.org/EfikaMX
What was the exact error with that version?
Difficult to say. Try something like:
$ /lib/ld-linux.so --list ./eui
That should show you what might be missing.
Matt
Actually, try
LD_DEBUG=all /lib/ld.so ./eui
That should produce a lot more output.
Also, we can use the readelf command, which will go down to the individual symbol level.
readelf -d ./eui
It'd be nice to be able to compare that output to something like this:
readelf -d /bin/sh
Here's what I have done:
I written a simple hello.c application I compile the file on the EfikaMX and crosscompile it on my ubuntu 12.04 desktop. The file compiled on the Efika works no problem. For the version cross compiled I get different result depending on the method used to load it. here some screen capture. the hello-xc is the cross compiled one (trying to run on Efika):
jacques@efikamx:~/Téléchargements$ ./hello-xc -bash: ./hello-xc: No such file or directory jacques@efikamx:~/Téléchargements$ /lib/ld.so ./hello-xc hello world! from xcompile on ubuntu 12.04 # ************that way it works**************** jacques@efikamx:~/Téléchargements$ /lib/ld.so hello-xc hello-xc: error while loading shared libraries: hello-xc: cannot open shared object file: No such file or directory jacques@efikamx:~/Téléchargements$The problem is with linux configuration or maybe libraries version. The Efika as older kernel and libc dans RaspberryPi linaro project.
jacques@efikamx:~/Téléchargements$ file /lib/ld-linux.so.3 /lib/ld-linux.so.3: symbolic link to `ld-2.11.3.so' jacques@efikamx:~/Téléchargements$ file /lib/ld-2.11.3.so /lib/ld-2.11.3.so: ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, stripped jacques@efikamx:~/Téléchargements$ uname -a Linux efikamx 2.6.31.14.27-efikamx #1 Tue Feb 21 15:43:17 UTC 2012 armv7l GNU/Linux
readelf -d hello and readelf -d hello-xc gives same result except for entry point values.
jacques@efikamx:~/Téléchargements$ readelf -d hello-xc Dynamic section at offset 0x4f0 contains 24 entries: Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libc.so.6] 0x0000000c (INIT) 0x82a0 0x0000000d (FINI) 0x84a0 0x00000019 (INIT_ARRAY) 0x104e4 0x0000001b (INIT_ARRAYSZ) 4 (bytes) 0x0000001a (FINI_ARRAY) 0x104e8 0x0000001c (FINI_ARRAYSZ) 4 (bytes) 0x00000004 (HASH) 0x8194 0x00000005 (STRTAB) 0x820c 0x00000006 (SYMTAB) 0x81bc 0x0000000a (STRSZ) 65 (bytes) 0x0000000b (SYMENT) 16 (bytes) 0x00000015 (DEBUG) 0x0 0x00000003 (PLTGOT) 0x105d8 0x00000002 (PLTRELSZ) 32 (bytes) 0x00000014 (PLTREL) REL 0x00000017 (JMPREL) 0x8280 0x00000011 (REL) 0x8278 0x00000012 (RELSZ) 8 (bytes) 0x00000013 (RELENT) 8 (bytes) 0x6ffffffe (VERNEED) 0x8258 0x6fffffff (VERNEEDNUM) 1 0x6ffffff0 (VERSYM) 0x824e 0x00000000 (NULL) 0x0 jacques@efikamx:~/Téléchargements$ readelf -d hello Dynamic section at offset 0x4b0 contains 25 entries: Tag Type Name/Value 0x00000001 (NEEDED) Shared library: [libc.so.6] 0x0000000c (INIT) 0x82c4 0x0000000d (FINI) 0x8464 0x00000019 (INIT_ARRAY) 0x104a4 0x0000001b (INIT_ARRAYSZ) 4 (bytes) 0x0000001a (FINI_ARRAY) 0x104a8 0x0000001c (FINI_ARRAYSZ) 4 (bytes) 0x00000004 (HASH) 0x818c 0x6ffffef5 (GNU_HASH) 0x81b4 0x00000005 (STRTAB) 0x8230 0x00000006 (SYMTAB) 0x81e0 0x0000000a (STRSZ) 65 (bytes) 0x0000000b (SYMENT) 16 (bytes) 0x00000015 (DEBUG) 0x0 0x00000003 (PLTGOT) 0x105a0 0x00000002 (PLTRELSZ) 32 (bytes) 0x00000014 (PLTREL) REL 0x00000017 (JMPREL) 0x82a4 0x00000011 (REL) 0x829c 0x00000012 (RELSZ) 8 (bytes) 0x00000013 (RELENT) 8 (bytes) 0x6ffffffe (VERNEED) 0x827c 0x6fffffff (VERNEEDNUM) 1 0x6ffffff0 (VERSYM) 0x8272 0x00000000 (NULL) 0x0
Jacques