[OSASK 5198] Re: gcc 移植計画.

  こんばんは、川合です。


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/


ML番号でジャンプ
ML単語検索