[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

binutils (Re: new signal stuff)



<199810021233.VAA09250@ruri.iri.co.jp>の記事において
1998年10月02日21時33分頃、tsubai@iri.co.jpさんは書きました。

 > egcs-1.1b 以外は source tree のは使っていません。binutils-2.9.1 を
 > つかってます。

あ、そうだったのですか。

 > # あれって 2.8.1 ですよね?

ですね。


それで、2.9.1だとkernel作るときに、

powerpc-netbsd-ld -N -Ttext 0x3100 -e __start -X -o netbsd ${SYSTEM_OBJ} vers.o
   text    data     bss     dec     hex filename
1072276   53648  136392 1262316  1342ec netbsd
cp netbsd netbsd.gdb
/opt/Be/bin/powerpc-netbsd-strip --strip-debug netbsd
BFD: st00414a: warning: allocated section `.bss' not in segment

とか言われたりしませんか?

実際にkernelを調べると、

	section        size       addr
	.text       0xef734     0x3100
	.rodata     0x16560    0xf2840
	.sdata2         0x0   0x108da0
	.data        0xcaf8   0x108da0
	.got           0x10   0x115898
	.sdata        0x688   0x1158a8
	.sbss         0x568   0x115f30
	.bss        0x20f60   0x1164a0
	.comment     0x4841   0x24eef9
	Total      0x138b2d

	ELF header
	  p_filesz= 0x112e30
	  p_memsz= 0x113398

となってて、.sbss分くらいしか多くない。
本来なら、
	  p_filesz= 0x112e30
	  p_memsz= 0x134300
ぐらいないと、おかしい気がします。もしくは .bssのsectionが別にあるとか。


で、実際にboot loaderで読むと、.sbss分しかzero fillされない...

binutils作るときに失敗したか、kernel作るときのoptionの指定を
失敗したか、binutilsのbugか...

sakamoto@cec.co.jp