Executables are now linked with the -pie option, which lead to a file type that is nearly indistinguishable from a shared library. I learned that this is an expected consequence.
The only difference is the presence of an 'interpreter' for executable files, but nothing forbids a .so to have an 'interpreter' too (for example the libc.so on my system has one):
Executables are now linked with the -pie option, which lead to a file type that is nearly indistinguishable from a shared library. I learned that this is an expected consequence.
The only difference is the presence of an 'interpreter' for executable files, but nothing forbids a .so to have an 'interpreter' too (for example the libc.so on my system has one):
$ file plop.so:
plop.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked
$ file plop.ex: ld-linux- x86-64. so.2, for GNU/Linux 2.6.32
plop.ex: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/
In conclusion we should look into Nautilus to solve the issue (I closed the bug for gcc).