コンテンツへスキップ
ものがたり
戻る

2005-01-02

今年は長い冬休みをとっている仲間が多い。まあ、去年は1.0に向けた作業で忙しかったしなぁ…。

I want to help you, Japanese hackers

ええと、mono on windowsをsvnからビルドしてフルに使いこなす道は、相変わらず厳しい道のりのようです。去年はNovellのハッカーからもよく個人的に相談されていたんですが(こんな開発環境を使っているのは僕くらいしかいなかったので)、もしmonoをhackしたいんだけど、セットアップで躓いている、という方がいらっしゃったら、お気軽にご相談下さい(ここにコメントして頂いても、atsushi@ximian.comまでメールして頂いても、atsushi.eno@jabber.orgで訊いて頂いても結構です)。

monoをsvnからビルドするには、cygwinを入れて、gccやmakeなど必要なパッケージを入れて、glibなどのWindowsネイティブパッケージをパスの通っている場所に置いて、それからsvnでチェックアウトして…といった作業が必要になるんですが…すいません、僕もすぐには全工程は出てきません。

あと、Fransisco T.Martinezが作った、ビルド環境の準備を楽にしてくれる「Mono+Cygwin 開発環境インストーラCD-ROM」を、Ximianにいたときに持ち帰ってきたので、もしほしい方がいらっしゃったら郵送します。お気軽に私(atsushi@ximian.com)までご相談下さいませ。いや、送るからにはhackしろ、とか言いません。(^^; そのかわり僕には身元が知れてしまいます(個人情報を残しておくつもりは全くありませんが)。…あ、冷静に考えたらこのCDはcvs時代のものだから、今は使いにくいかも。


コメント

akiramei — 01/02/2005 14:34:21

あ、glib-2.0はネイティブ版を使うのか〜。cygwin版を使おうとしてはまってました。glib-2.0が無いと怒られ、入れたら入れたでglib-2.0はアンインストールしてくれ、とか言われてどーしようかと。(^^;

atsushieno — 01/02/2005 15:20:30

はい。ネイティブ版を使わないとGPLでリリースしなければならなくなりますので(^^; 昔はcygwinにglibのパッケージなんて無かったので、こんな混乱は無かったんですけどね〜。

Kazuki — 01/02/2005 19:16:43

うーむ・・・僕には無理みたいです。 cygwinや各種パッケージを入れたのですが
なぜかmonoのlibgcのビルドでエラーが・・・mcsのビルドは上手くいったんですけどね。でも、mscorlib.dllのバージョンが違うってmonoに怒られるのでmonoがビルドできないと結局のところ意味が無いのかなぁ・・・
「インターネットエラー」僕もそのエラーに笑いました(笑

akiramei — 01/02/2005 20:19:50

修正パッチ作ってみました。1/2の日記をみてくださいー

atsushieno — 01/02/2005 22:22:38

libgc
これは僕も(というか、誰も^^;)よく分かっていませんが、出ます。困ったことに、これはたまに不明な原因で成功するんですよね…。で、回避策ですが、いくつか思いつくものを書いてみます。

  1. automakeが古くておかしい場合がある(らしい)。automake-stableとautoconf-stableをcygwinでアンインストールする。

  2. mono-1.1.3.tar.gz からlibgc/configureだけを引っ張ってきて、libgcディレクトリで./configureを実行する。

  3. http://www.go-mono.com/archive/libgc-dev.zip をダウンロードして、/usr/localなどの場所に展開し、
    ./autogen.sh —with-gc=boehm
    とやると、(古いやり方なのですが)上記アーカイブに含まれているgc.dllをGCのdllとみなしてビルドします。

僕はこれらを組み合わせてビルド出来るような状態に持っていきましたが、正確にどうやってビルドしたのかをちょっと覚えていません—;

atsushieno — 01/02/2005 22:24:49

mscorlib.dllのバージョンが違う
このメッセージは、mono runtimeをInternalCallでmcsから呼び出された時に、internal callを含むdllと、ランタイムのバージョンとが違っては困るので出しています。ランタイムが最新版に更新されれば、問題は解決します。

Kazuki — 01/03/2005 02:27:19

akirameiさんのBlogにコメントできなかったので、ちょっとお借りします・・・
パッチを当ててみたのですが、こちらでは(-10).ToString(”##.##”);が”-10:-00”となってしまいます。パッチの当て方が手動だったので(TortoiseSVNだとエラーでパッチを適用出来なかった)、akirameiさんの方でもご確認お願いします。

※なんでakirameiさんのところにはコメント投稿できないのだろう・・・

atsushieno — 01/03/2005 03:24:34

コメント投稿できない
あーそれはですねー、僕のはてなダイアリーの設定がゲストでも投稿可能になっているからです。

Kazuki — 01/03/2005 03:58:33

なるほど。はてなに登録しない人はゲストとなるのですねー。
私もakiramei氏に刺激されてIntegerFormatterのバグ修正をしてパッチを上げてみました。
えのさん、よろしくですー

atsushieno — 01/03/2005 05:04:39

やや、#70475まで。ありがとうございます〜。えっと、Kazukiさんのパッチで、上の-10.ToString()をやってみると -10.00になってしまうのですが、-10でないとNGですよね…?

あと、パッチですが、個別の問題ごとに別々のパッチを作っていただけると、チェックする人がとても助かります。

Kazuki — 01/03/2005 05:12:49

あ・・・まじですか・・・報告サンクスです。

akiramei — 01/03/2005 06:30:06

Kazukiさん
akirameiさんのBlogにコメントできなかったので、ちょっとお借りします・・
はてなの人オンリー設定にしてます。ごめんなさい〜

IntegerFormatterのバグ修正をしてパッチを上げてみました。
あ、かぶったかも。(^^; この辺はテストするたびにMS実装と動きが違うところが見つかって、結構いじりまくってしまいました・・・

atsushienoさん
svn形式にしてアップしました。


この記事を共有:

前の記事
I want to help you, Japanese hackers
次の記事
mcs/class/README.ja