[b-free 400] Re: version 0.0.21

Takanori Hayashi (takanori@ohsaki.meidensha.co.jp)
Tue, 20 May 1997 09:04:05 +0900

林 です。

In message <199705181317.WAA30046@bfree.rim.or.jp>
"[b-free 398] Re: version 0.0.21"
"Naitoh Ryuichi <night@bfree.rim.or.jp>" wrote:
night> > > ついでにWindows開発環境の経過を(ちっとも進んでないが)。
night> > > bin86*をWindows上でmakeしてみました。ld86が宣言の問題でエラー
night> > > を出すのをソースに手を入れて押え込んでas86.exe, ld86.exeを作る
night> > > ことはできたのですが、これを使ってbootをmakeしようとするとld86
night> > > がエラーを出します。オブジェクトフォーマットがずれてるようで、
night> > > やはりまじめにソースを読んで移植しないといけないですかね。
night>
night> ld86 はどのようなメッセージを出しているのでしょうか?

以下のようなメッセージがでます。
>bash$ make
>cd 1st ; make 1stboot
>as86 -O -a -o 1stboot.o 1stboot.s
>ld86 -O -s -o a.out 1stboot.o
>ld86: premature end of input file 1stboot.o
>make: *** [1stboot] Error 2
>make: *** [1stboot] Error 2

エラーは訳すと「入力ファイル1stboot.oの終わりが早すぎる」といった
ところです。ld86のコンパイルエラー(マクロと関数宣言の不整合)を押さえる
ためにマクロを1つ#undefしたのですが、これがページサイズに関するものな
ので、境界調整が狂っているのではないかと思っています。
ついでに、B-Freeの方は0.0.20で、makeは-D__LINUX__を外したくらいしか
変更してないです(これはtool類のコンパイルにしか関係ないはず)。
何か気の付くところがあればお願いします。

night> 考えてみると、as86 と ld86 は minix からのもの(多分)なので、
night> a.out や ELF とは関係ないような気がしてきました。

それ以前の問題という気はしますが…。どちらにせよa.outやELFやPEの情報
はtool類の修正に必要なので無駄はないですが。

night> # これは、Minix の参考書を読むしかないかな。。。

うーむ。

---
    林(takanori@ohsaki.meidensha.co.jp)