こんばんは、川合です。 ku-min さんは 2002/10/21 20:45:44 の「[OSASK 5196] Re: gcc 移植 計画.」で書きました: >テスト期間中だってのに… うわー、それはいけません。テストが終わるまで、お返事かいちゃ駄 目ですよ。 >僕は全然詳しくないので分かりませんが、この前調べておりまして 偉いです。とても偉いです。わかった範囲だけでいいですから、初心 者の僕にいっぱい教えてください(もちろんテスト後に)。 >ここで、ソースがCのプログラムだけなら、コンパイル作業は >MinGWとかLcc-WIn32でどうにか出来るから(Windows上でOSASKプログラムのコンパイル) >って言うのが前提にあって > >> as.exe、cc1plus.exe、g++.exeの3ファイルはどうやってmakeすればいいのでしょうか? > >ってことでいいのでしょうか? > >とりあえずこれが分からないと話しに乗れない… >分かっているのが普通!? この辺について、流れを説明しましょう。 まず話に付いていけない人がいるともったいないので、MinGWについ て説明します。MinGWは、gccのwin32版です。だからコンパイラコアは gccと同じです。当然GPLでソースも公開されています。 なんでMinGWを選んだのかといえば、それは簡単です。手伝ってくれ る人が参入しやすそうだからです。ついでに言うと、僕自身もLinuxを インストールしていないので、参入しやすいです。 gccはC言語やC++だけではなく、Fortranやadaもあるようですが、と りあえず以後はCとC++だけに限定します。もしこの両方も手におえない ということになったら、まずはCのみにするかもしれません。 目的は、gcc/OSASKを作ることです。 僕が考えた手順を説明します。 まず、MinGWは僕が予想していたよりも大きかったので、コンパクト なMinGWを作ります。とりあえずバイナリを圧縮して1MBになればいいで す。コンパクトにする方針は単純明快で、使わなそうな部分を切り落と します。as.exeなんて僕が書きなおせば100KBにできると思いますが、 書き直しをやっていると大変なので、今回はやりません。 その上で、そのコンパクトMinGWをOSASKに移植します。移植はファ イル周りをいじるだけです。多分それほど大変じゃないです(と思い たい)。 ということでまずはコンパクト化です。コンパクト化するには、何よ りもまずソースを入手して、makeしてみなければいけません。うまくma keできたら、ソースをいじってまたmakeして、改造MinGWがちゃんと動 くかどうかチェックするわけです。 僕としては、MinGWはMinGWでmakeしようと思っています。lcc-win32 でもmakeできるかもしれませんが、多分そういうテストはやっていない と思うからです。これでlcc-win32のバグにぶつかったりすると、泥沼 になります(lcc-win32にバグがあるかどうかは分かりませんが)。 MinGWのソースは、Cオンリーか、もしくはC++で書かれていると思い ます。どちらにしてもMinGWでmakeできるはずです(コンパイラのチェ ックはこの方法でやるのが普通ですし)。 今日はちょっと体調が悪いので、明日、くーみんさんに教えてもらっ たURLで勉強します。勉強できたらまた報告しますので、しばらくお待 ちください。 なおコンパクトMinGWができたら、定数データをdataセクションに置 くように修正して、lcc-win32の代わりに使えるようにしたいと思って います。ライセンスはGPLになるので、僕のページからもダウンロード できます。これなら、lcc-win32だけを別にダウンロードする現状より も便利になると思います。lccよりもgccの方が最適化が強いらしいです し。 それでは。 -- 川合 秀実(KAWAI Hidemi) OSASK計画代表 / システム設計開発担当 E-mail:kawai !Atmark! imasy.org Homepage http://www.imasy.org/~kawai/