MCL(47)

インデックスに戻る

前のMCLへ  次のMCLへ

▼ My Computer Life (47)

47. C-MAGAZINE

 Oh!Xと同じソフトバンクが出している雑誌に、C-MAGAZINE(以下Cマガ)がある。2005年現在でも刊行されているから、ずいぶん息の長い雑誌である。なんでも創刊が1989年だから、現在ではもう16年も続いている。
 Cマガはその名前のとおり、C言語についてのトピックを色々集めたプログラム関係の雑誌だ。とは言うものの、結構C言語と関係ない内容も多い。各種スクリプト言語やJava、アセンブラなどを扱うこともある。言語の解説講座あり、商品の紹介あり、その他コラムや他国の提携誌の記事の邦訳ありと、色々な面に役に立つ雑誌だ。プログラムの初心者にはちょっと難しい内容だし、上級者にはすでに必要のない知識ばかりかも知れないが、私のような「永遠の中級者」には大変役に立つ雑誌である。

 で、私は1991年の5〜6月号を購入した。以前から手に入れたいと言っていたX68kのGCCがこの5〜6月号の2号にわたって付録ディスクに収録されていたからだ。この雑誌はとにかく毎号のように付録ディスクがついていて、大変ありがたい(その分、定価がどんどん上がっていったんだけど)。

 GCCとは、GNU C Compilerの略で、GNUのCコンパイラである。
 で、GNUとは何かと言うと、リチャード・ストールマンという人が作ったFSF(フリーソフトウェアファウンデーション)という団体のプロジェクトで、その名前は「GNU's Not Unix」の頭文字から取られている。…その文章の中にすでに「GNU」という言葉が埋め込まれているのがミソである。ちなみに実際にはGnuとは、動物の一種である。「ヌー」という、レイヨウの仲間だ。
 さてこの団体は珍しい事をしている。コンパイラ等の重要なソフトを開発しちゃ、フリーソフトとして公開している。フリーソフトと言っても、一味違う。ソースコードを公開し、再配布も自由に行えるが、ただしその際には対価を取らず、また自らもソースコードを公開しなくてはいけないという制限をつけるというものである。これがGNUプロジェクトで、その使用許諾をまとめたのがGNUのGeneral Public License、通称GPLである。
 簡単に言うと、俺らが作ったものをタダで使わせてやるから、お前もタダで配れよ、というのが主旨である。ここには、ストールマンの「プログラムなんてタダでいいじゃん」というメッセージがこめられている。

 そのGNUが作ったコンパイラがGCCである。
 金を取って作っているわけじゃないから、企業の作ったコンパイラほど金のかかったものではない。しかし、オープンソースというのは侮れない。金はかかっていないが、そのかわり無数の暇人がネットを通して改良を施すので、結果的に良いものが作れる事になる。
 GCCがそのプラットホームで最良のコンパイラになりうるかは、ライバルによる。GCCの強みは、元のコンパイラのエンジンが完全に公開されているので、どこかの暇人が「こっちにも移植しよう」と思って移植&公開するため、様々なプラットホームで動いているというところだ。

 当然、X68kにも、どこかの暇人が移植している。そしてその性能は、唯一のライバルと言っていいシャープ純正のコンパイラ(通称XC)を上回っていた。
 まずなんと言っても、コンパイル速度が違う。はっきり分かるくらい、違う。いまどきの若い子は知らないかも知れないが、昔はコンパイルというと結構時間のかかる作業だったのだ。そして、コンパイル速度は開発効率に直結する。XCで作るより、GCCで作った方がずっと良いものを作れる。
 また、吐き出されるコードの品質も、GCCの方が良いようだ。GCCには、他の68kマシンで積み重ねてきた様々な最適化技術が搭載されているが、XCにはそこまでのものがない。
 更に、一般的にGCCでは非純正のアセンブラ、リンカをセットで利用する事が多い。GNUのライセンスで作られたGASなどもあったようだが、一般的にはHASとHLKが使われていたのではないだろうか。これらのソフトもまた純正品より性能的に上回っているので、結局あらゆる面でXCは劣ってしまう。
 とは言え、GCCは純粋なコンパイラなので、X68kのハードをいかすためにはライブラリが必要になる。このあたりは、XCのライブラリに頼るしかなかった。

 そのGCCを手に入れたわけだが、コンパイル環境を作るまでは結構時間がかかった。何しろ、当時の私には何も知識がなかったからね。
 特に、XCのライブラリを使ってコンパイルした場合、floatN.xのエミュレータやiocsなどのライブラリを適切に組み込まないといけないのだが、そのへんがなかなか上手くいかなかった。
 ま、あれほど欲しがっていたのに、実際に役に立ち始めるのはまだまだ先の話であった。


前のMCLへ  次のMCLへ

戻る

TOM 2005