An adventure with 3D engines and possibly an elf

4 replies [Last post]
prospero
Offline
Joined: 05/20/2022

How is an "application/x-executable" file with a ".64" extension supposed to be called? I have been test running the Godot Engine from such a file, but I have no idea how to call it, except tentatively a "portable" executable. Or is that simply an elf?

https://upload.wikimedia.org/wikipedia/commons/e/e4/ELF_Executable_and_Linkable_Format_diagram_by_Ange_Albertini.png

Magic Banana

I am a member!

I am a translator!

Offline
Joined: 07/24/2010

Extensions usually mean nothing for GNU/Linux. You can give the file as an argument to the 'file' command to determine its type or, through a file manager, right-click on it to see its "Properties".

It is probably an ELF 64-bit LSB executable. If so, you can execute it by its path. If the working directory directly contains the executable, that would be:
$ ./[file_name.64]
Or, if the file launches something graphical, you can double-click on it from a file manager.

I am assuming the file is not only an executable but also that its mode bits allow you to execute it. If not, see if you can make it executable, either through the "Properties" or giving it as an argument to 'chmod +x'.

prospero
Offline
Joined: 05/20/2022

I see, thank you. So an ELF file it is. It came from there: https://godotengine.org/download/linux.

I have indeed been running the Godot Engine GUI by opening this file in Caja, it had already been made executable in terms of user permissions. Since there have been many discussions about various channels bypassing the deb system, I was unsure which type of distribution this could be referred to (obviously not being flatpak, nor appimage, nor snap).

I believe the Tor browser comes in a similar "portable" fashion, but in the case of Godot one simply downloads an archive with exactly one file in it - the executable - and runs it. There is only one Godot.

eric23
Offline
Joined: 06/30/2017

The file command could help you figure out what type of file something is.
# file /bin/cp
/bin/cp: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=421e1abd8faf1cb290df755a558377c5d7def3b1, for GNU/Linux 3.2.0, stripped

prospero
Offline
Joined: 05/20/2022

Yes, this is exactly what I did, following MB's instructions above:

> You can give the file as an argument to the 'file' command to determine its type