我用gcc编译了一个小型C程序(两行代码),以尝试了解ELF文件格式。readelf -h
在目标文件上做一个,我在标题中:
OS/ABI: UNIX - System V
我正在使用Fedora,所以为什么不使用Linux?
编辑:我编译
int main(){
int x = 0;
x++;
}
与gcc -o main.o -c main.c
。我的gcc版本是
gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4)
我已经相应地编辑了问题。
—
alex_reader 2014年
我只是
—
ctrl-alt-delor 2014年
readelf -h /bin/ls
在debian gnu / linux上做过。这也表明OS/ABI: UNIX - System V
。我的猜测是,ABI用于多个内核,而不仅仅是Linux。我也知道linux支持多个ABI。
维基百科说,它[在ELF头的OSABI场]通常设置为0的SysV]不管目标平台
—
斯特凡Chazelas
gcc --version
和iii)用于编译它的确切命令。