[Armadillo:06666] Debian lenny EABI バージョンについて
email@hidden
2011年 1月 28日 (金) 11:06:16 JST
お世話になります、天城です。
Armadillo-500FX、Debian lennyでXは動くようになり、GUIアプリケーションの作成で
、
Lazarusからのオブジェクトファイル形式をOABIから、EABI Version5にして実行したと
ころ、
-bash: ./lazarus_500fx_demo: No such file or directory
との、エラーが発生しました。
最初はファイルが見付からないのかと思ったのですが、 sh ./lazarus_50fx_demoとす
ると、
./lazarus_500fx_demo: ./lazarus_500fx_demo: cannot execute binary file
との、エラーが出るので、シェルではアプリのファイルを認識してるようです。
で、少し気になったのが、こちらの作成したEABIはVersion5ですが、調べると
lennyの各ファイルのバージョンはEABI Version4のようです。
Version4にあわせる必要があるのでしょうか?
参考までに、当方のアプリは
email@hidden:~$ readelf -all lazarus_500fx_demo | head -30
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: EXEC (Executable file)
Machine: ARM
Version: 0x1
Entry point address: 0x22db4
Start of program headers: 52 (bytes into file)
Start of section headers: 6289188 (bytes into file)
Flags: 0x5000002, has entry point, Version5 EABI
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 5
Size of section headers: 40 (bytes)
Number of section headers: 21
Section header string table index: 20
Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf
Al
[ 0] NULL 00000000 000000 000000 00 0 0
0
[ 1] .interp PROGBITS 000100d4 0000d4 000013 00 A 0 0
1
[ 2] .hash HASH 000100e8 0000e8 002330 04 A 3 0
4
[ 3] .dynsym DYNSYM 00012418 002418 004c30 10 A 4 1
4
[ 4] .dynstr STRTAB 00017048 007048 007077 00 A 0 0
1
[ 5] .gnu.version VERSYM 0001e0c0 00e0c0 000986 02 A 3 0
2
[ 6] .gnu.version_r VERNEED 0001ea48 00ea48 000060 00 A 4 3
4
email@hidden:~$
となっていますが、例えばawkの場合
email@hidden:~$ readelf -all /usr/bin/awk | head -30
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: EXEC (Executable file)
Machine: ARM
Version: 0x1
Entry point address: 0x8f40
Start of program headers: 52 (bytes into file)
Start of section headers: 99352 (bytes into file)
Flags: 0x4000002, has entry point, Version4 EABI
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 8
Size of section headers: 40 (bytes)
Number of section headers: 27
Section header string table index: 26
Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf
Al
[ 0] NULL 00000000 000000 000000 00 0 0
0
[ 1] .interp PROGBITS 00008134 000134 000013 00 A 0 0
1
[ 2] .note.ABI-tag NOTE 00008148 000148 000020 00 A 0 0
4
[ 3] .hash HASH 00008168 000168 000224 04 A 4 0
4
[ 4] .dynsym DYNSYM 0000838c 00038c 000440 10 A 5 1
4
[ 5] .dynstr STRTAB 000087cc 0007cc 0001cf 00 A 0 0
1
[ 6] .gnu.version VERSYM 0000899c 00099c 000088 02 A 4 0
2
email@hidden:~$
と、EABI Version4となってます。
armadillo メーリングリストの案内