AppImage / AppImageSpec

This repository holds the specification for the AppImage format.
http://appimage.org/
MIT License
71 stars 22 forks source link

ELF file ABI version invalid #15

Open probonopd opened 7 years ago

probonopd commented 7 years ago

On openSUSE LEAP 42.2:

file ./XChat_IRC-x86_64.AppImage
./XChat_IRC-x86_64.AppImage: ELF 64-bit LSB executable, x86-64, version 1, dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=ee92d95f24bb0fcd98a1b0a440f9b3fef5d44198, stripped

linux@linux:~> /lib64/ld-linux-x86-64.so.2 ./XChat_IRC-x86_64.AppImage 
./XChat_IRC-x86_64.AppImage: error while loading shared libraries: ./XChat_IRC-x86_64.AppImage: ELF file ABI version invalid

xxd ./XChat_IRC-x86_64.AppImage  | head -n 10
0000000: 7f45 4c46 0201 0100 4149 0200 0000 0000  .ELF....AI......
0000010: 0200 3e00 0100 0000 4026 4000 0000 0000  ..>.....@&@.....
0000020: 4000 0000 0000 0000 f0ac 0100 0000 0000  @...............
0000030: 0000 0000 4000 3800 0900 4000 2000 1f00  ....@.8...@. ...
0000040: 0600 0000 0500 0000 4000 0000 0000 0000  ........@.......
0000050: 4000 4000 0000 0000 4000 4000 0000 0000  @.@.....@.@.....
0000060: f801 0000 0000 0000 f801 0000 0000 0000  ................
0000070: 0800 0000 0000 0000 0300 0000 0400 0000  ................
0000080: 3802 0000 0000 0000 3802 4000 0000 0000  8.......8.@.....
0000090: 3802 4000 0000 0000 1c00 0000 0000 0000  8.@.............

ldd ./Leafpad-0.8.18.1.glibc2.4-x86_64.AppImage 
        not a dynamic executable

Can this be reproduced?

TheAssassin commented 7 years ago

@probonopd I am not sure what the issue here is. Please provide links to the files you're testing against. Also, your second command line doesn't make very much sense.

probonopd commented 7 years ago
linux@linux:~> /lib64/ld-linux-x86-64.so.2 ./XChat_IRC-x86_64.AppImage 
./XChat_IRC-x86_64.AppImage: error while loading shared libraries: ./XChat_IRC-x86_64.AppImage: ELF file ABI version invalid

ELF file ABI version invalid is an issue, isn't it?

TheAssassin commented 7 years ago

Hm, I can reproduce this with random AppImages on my Ubuntu 16.04 LTS. Is it really a problem, or more like an unimportant warning?

probonopd commented 7 years ago

I don't know yet...

azubieta commented 6 years ago

It seems that this wasn't a critical issue. Can we close it?

TheAssassin commented 6 years ago

It is a critical issue. This is the issue I explained a few times in other locations, related to our magic bytes, which are interpreted by some interpreters. As said, calling the ld-linux.so.2 interpreter directly is not possible due to that issue (requiring workarounds in tools like AppImageLauncher), also, qemu doesn't want to run AppImages (see #699 for details).

This is the issue to solve in the next revision of the AppImage spec. I'll be moving it there therefore.