Skompilowałem mały program C (2 linie kodów) z gcc, aby spróbować zrozumieć format pliku ELF. Robię readelf -h
na pliku obiektowym, mam w nagłówku:
OS/ABI: UNIX - System V
Korzystam z Fedory, więc dlaczego nie jest to Linux?
Edycja : skompilowałem
int main(){
int x = 0;
x++;
}
z gcc -o main.o -c main.c
. Moja wersja gcc to
gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
readelf -h /bin/ls
na Debianie GNU / Linux. To także pokazało OS/ABI: UNIX - System V
. Domyślam się, że ABI jest używany na więcej niż jednym jądrze, nie tylko na Linuksie. Wiem też, że Linux obsługuje więcej niż jeden ABI.
gcc --version
i iii) dokładne polecenie użyte do jego skompilowania.