Linuxのオブジェクトファイルの形式は何ですか?
私が知っているオブジェクトファイルには2つのタイプがあります:
- 実行可能ファイル。ELF形式です
-
コンパイル後、リンク前にgccによって生成されるオブジェクトファイル。
そのようなオブジェクトファイルの形式は何ですか?
または、ELF形式でもありますが、実行可能ファイルとは異なるサブ形式がありますか?
このタイプのオブジェクトファイルの形式を実行可能ファイルの形式に変換するリンカーの仕事はありますか?
- 他の種類のオブジェクトファイルはありますか?
承認された回答:
コアダンプも一種のオブジェクトファイルであり、通常はELF形式でもあります。このプログラムを実行すると、おそらく「core」という名前のファイルが生成されます:
int
main(int ac, char **av)
{
char *p = 0;
*p = 'a';
return 0;
}
私のfile
コマンドによると:
core: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV), SVR4-style, from './dump'