J'ai compilé un petit programme C (2 lignes de codes) avec gcc pour essayer de comprendre le format de fichier ELF. Faire un readelf -h
sur le fichier objet, j'ai dans l'en-tête:
OS/ABI: UNIX - System V
J'utilise Fedora, alors pourquoi n'est-ce pas Linux à la place?
Edit : j'ai compilé
int main(){
int x = 0;
x++;
}
avec gcc -o main.o -c main.c
. Ma version gcc est
gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
readelf -h /bin/ls
sur Debian GNU / Linux. Cela a également montré OS/ABI: UNIX - System V
. Je suppose que l'ABI est utilisé sur plusieurs noyaux, pas seulement Linux. Je sais également que Linux prend en charge plus d'un ABI.
gcc --version
et iii) la commande exacte que vous avez utilisée pour le compiler.