[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[OSASK 3126] from OSASK BOARD



このメールは、OSASK伝言板に書き込まれた内容です。
この書き込みに返事を書く場合は、下のURLから書き込みを行なって下さい。


http://www.imasy.or.jp/~mone/osask/index.cgi?REFER=3c5fe76f_9abb

From: 川合秀実
Message-ID: 3c5fe76f_9abb
Date: 2002/02/05 23:08
Subject: Re: nlink.c

[OSASK 3124]へのレスです。

>どうにかmingwの吐き出すバイナリが
>動くようになってきました。

 さすが!

># といっても、文字が表示されかったり
># まだちょっと変なんですけど

 早速ダウンロードしてみました。

 ざっと見たところ、肝心の文字定数は.text内にあるようです。うーん、これ
は参りますねえ。mingw.oをよく調べていないので分からないのですが、もしか
したらmingwは文字定数をコードセグメント内に作るのかもしれません。つまり
フラットモデルしか受け付けないということなのか・・・。それとも、nlinkの
バグなのか・・・。

 仮にフラットモデルオンリーだとしたら、それなりの回避策を設けることはで
きますが、今までのlcc-win32向けのライブラリーはほぼすべて使えません。全
部用意し直さなければいけないので結構大変です。

 うーん、どうもmingw.oには.dataセクションがないようです。だから文字定数
も.text内にあるんでしょう。ってことはフラット想定である可能性が高いです
ねえ・・・どうします?mingwにオプションとかはないんですか?

>VCのコンパイラの吐き出すCOFFは
>リンクはできるんですが
>CS limitをはいてBochsが死んでしまいます。

 vc.oの方は、どうもエントリーアドレスが0x1000などというぶっ飛びの値にな
っているせいではないでしょうか?なんでそんな事になってしまっているのかは
ちょっと調べないと分かりません。