Sunの犬のわたしにとって、.NETは仇敵である。だがにっくき相手なだけに知らないのはすげえくやしい。だがそんなものにビタ一文払いたかねえ。と思っていたら、「オープンソースのASPクローン」というものがあることを知った(UNIX USER(ソフトバンク パブリッシング(株)発行)2003年2月号のニュース)オープンソースってことはタダなのか!?ホントに使えるのか!?ダメもとでトライしたら、WindowsのCygwin上でC#のプログラムをコンパイルして実行できた。やった!12000円(Visual C#代)もーけ!この先どーなるかわからないが、行けるとこまで行っけー!
/プログラムの作成と実行/.NET Frameworkのインストール/Monoのダウンロードとインストール/最初のプログラムだが、わたしはC#を今まで一度も、どっかでちろっと立ち読みしたくらいでコードもロクに見たことがない。Hello Worldとかコンソールで出すにはどーすればいいのか、だがC#とHello
Worldで検索したらいろいろ出てきた。ここにあえて記すべくもない簡単なファイルを作って、c:\cygwin\home\noniko\hello.csとして保存した。
cygwinを立ち上げ、プロンプトから
mcs -out:hello.exe hello.cs
とやると、ちゃんとCompilation Successfulみたいなメッセージが出力された。そして、同じフォルダにhello.exeというファイルができている。
さてこれをどうやって実行するのか?Windows実行ファイルをCygwinから実行する方法はわからない。けどやけくそぎみに別にWindowsの「コマンドプロンプト」を立ち上げて
cd c:\cygwin\home\noniko
hello
とこっちから実行したらちゃんとHelloが出た。
そこで気をよくしたわたしは本屋さんに行ってテキトーなC#の本を買ってきた。これまで例題を3つほどやってみたが問題なく動くようだ。もっとも日本語表示はこのままでは?で表示される。CygwinのせいなのかMonoのせいなのかはわからないがあまり本気でやるわけではないので、このまましばらく英文だけ使っていこうと思う。
2003年01月27日
そして、MSのサイトから.NET Frameworkをゲットしてインストールしなければならなかった。それをしないままmcsコマンドなどをかまそうとすると、「mscoree.dll」とかいうものが見つからない、とエラーメッセージ。このファイル名で検索してみると.NET
Frameworkのダウンロードサイトに行き着いたというわけだ。
ホントにちょうど偶然、のんのんが新しいグラフィックボードのドライバを動かすのにそいつをダウンロードした矢先だった。でなければそんなもののダウンロードはカネを取られるんだろうとビビって頓挫したところだった。実はカネどころかフリーのユーザ登録すらしなくてよかったのだった。ケチなのか太っ腹なのかわからねえ連中である。
インストールは簡単で、setup.exeをダブルクリックするだけである。するとOSが2000proなので、IISサーバがありませんヨと言われるが、スキップして構わなかった。今うちの2000Serverは寝ているので、面白くなってきたらこいつに試してみようかとも思うが、MonoプロジェクトにはASPサーバのクローンもあるみたいなのでどっちにするかまだ決めてない。
あとはじっと待つ。「あと4秒」とかいう表示が10分くらいずっと出ているが、そういうことにあまり目くじらは立てないほうだ。
2003年01月27日
背景は目次んとこに書いてしまったので、ササッと本論へ!
目的のサイトはhttp://www.go-mono.com/というところだ。
ダウンロードできるツールは、UNIX用と、cygwinで使うためのWindows用とあるようだ。後者のコンパイラをWindowsのコマンドプロンプトからチョクで動かそうとしたらエラーになった。
UNIX用のツールはコンパイルしなければならないようで、うちのLinuxとSolarisで試してみたが、glibがどーのbisonがどーのということでまだうまくコンパイルできていない。
その点、Cygwin用は簡単だ。必要なアーカイブはmono-0.19-stable.exeというヤツがひとつ。これをダブルクリックするとmono-0.19というフォルダができる。その中にさらにinstallというフォルダがあって、その中にbinとかmanとかetcとかいうUNIXっぽいフォルダができている。binフォルダの中にはmcs.exeとかmono.exeとかいうそれらしい実行ファイルや.sh形式のものもある。いかにもCygwin風だ。
このinstallフォルダをmonoと名前を変えて、c:\cygwin\usr\monoという位置に引っ張っていった。
Windows2000の環境変数のPATHに
c:\cygwin\usr\mono\binと
c:\cygwin\usr\mono\libを追加。
念のため、c:\cygwin\binから始まってなんか大事そうなbinフォルダやlibフォルダもぜんぶ環境変数PATHに追加してまう。
2003年01月27日