Linux カーネルがあり、objcopy ツールを使用して ELF ヘッダーを生成しようとしています。以下は最初のステップです。
objcopy -I binary -B i386 -O elf32-i386 --rename-section .data=.text linux_kernel.bin main.o
そして、この後、 readelf -s main.o を使用してシンボルテーブルを読みたかったのですが、奇妙なシンボルが得られ、以下が出力されます
Symbol table '.symtab' contains 5 entries:
Num: Value Size Type Bind Vis Ndx Name
0: 00000000 0 NOTYPE LOCAL DEFAULT UND
1: 00000000 0 SECTION LOCAL DEFAULT 1
2: 00000000 0 NOTYPE GLOBAL DEFAULT 1 _binary_linux_kernel_bin_
3: 004df650 0 NOTYPE GLOBAL DEFAULT 1 _binary_linux_kernel_bin_
4: 004df650 0 NOTYPE GLOBAL DEFAULT ABS _binary_linux_kernel_bin_
次のような記号が表示されるはずです
_binary_linux_kernel_bin_start
_binary_linux_kernel_bin__end
_binary_linux_kernel_bin_size
どこが間違っているのか教えてもらえますか?? それとも期待されていますか??
以下のようなことをしなければならないので、なぜ適切なシンボルを見たかったのか
--entry_point=_binary_linux_kernel_bin_start