Mono

makeエラー

Corlib not in sync with this runtime: expected corlib version mm, found nn に悩まされる。結局、全部消してチェックアウトからやり直したら通りました。 $ make clean;svu up . mcs;autogen.sh;make get-monolite-latest;make;make install これだと駄…

パフォーマンス

nemerleのビルドをMS.NET2.0とMonoとで比較したところ2:01と2:06という結果に。ほとんど差が無いですね。コンパイラくらいのアプリならいい勝負っぽい。

mkbundle

mkbundleのwin32版パッチがメーリングリストに流れていたので当てて見ました。ウチで動作させるにはちょっと修正が必要でして、 static void QueueAssembly (ArrayList files, string codebase) { string codebase_ = codebase.Replace("\\", "/"); if (file…

System.Queryのコンパイル

System.Query.dllのソースをC#2.0でコンパイルできるように変換してgmcsでコンパイルするも、通らず。そのまんまアップ出来ないので最小限の再現コードを用意してみました。 using System.Collections.Generic; public interface I<T, K> {} public delegate K Func<T, K></t,></t,>…

svnからのビルド

なんか、cscで失敗する。それだけならいいんですが、データ実行防止(DEP)に引っかかる。Althon64な所為? 取りあえずMSにエラー報告を送信してみた。(^^;

Socket.Accept

どうも、スレッドをブロッキングしているみたい。 using System; using System.Threading; using System.Net; using System.Net.Sockets; class C { public static void Service () { Socket listener = new Socket (AddressFamily.InterNetwork, SocketType…

OracleClient

オラクル環境用意してMonoから接続を試みたけど失敗。 Unhandled Exception: System.DllNotFoundException: clntsh Monoのソース見た限りじゃ、oci.dllをP/Invokeしているだけなはずなんだけどなぁ。Oracle9iでなんかインストールし忘れているのかしら・・・…

EUC-JP

エンコーディングに不具合がありそ。 using System; using System.IO; using System.Text; using System.Net; class X { static void Main () { byte [] buf = {131, 69}; Encoding enc = Encoding.GetEncoding ("euc-jp"); string s = enc.GetString (buf, …

続々大量のWarning

http://d.hatena.ne.jp/akiramei/20050402#p1 ↑この問題が、やっとmono-devel-listに報告されました。gmcsだと問題が起きなくて不思議だったのですが、単にgmcsに変更を組み込んでいないだけらしい。Win32環境でMonoを弄っている人が少ないことがよく分かり…

WebRequest.GetResponse()

呼ぶと、プログラムが終了しなくなるみたい。 using System; using System.Net; class X { static void Main () { string url = "http://www.google.co.jp/"; WebRequest req = WebRequest.Create(url); WebResponse res = req.GetResponse (); res.Close();…

続大量のWarning

結局、Monoの問題っぽい。SVN 42304のタイミングで行っているdecl.csの修正が原因のようです。鬱陶しいのでFinalizeをスキップするようにクイックハック。(^^;

大量のWarning

SVNリポジトリのソースからmakeしたmcsでコンパイルするたびに warning CS8028: The method 'System.Object.Finalize()' is marked 'override', but doesn't appear to override any virtual or abstract method: it may be ignored during overload resolut…

初めてのGtk# (Mono Win32編)

http://d.hatena.ne.jp/akiramei/20050117#p1の続き。Win32版のGtk#をインストールしてもmonoのGACには登録されないので、手動で登録する必要があります。(注意:Gtk#1.9.2からデフォルトのインストールパスがC:\GTK\2.4に変わったので、そっちにあわせていま…

アセンブリのロード

EXEとDLLに同じ名前をつけたときの動作がMS.NETとMonoで違っていそうです。きちんとした調査は後ほど・・・

互換と仕様

http://d.hatena.ne.jp/atsushieno/20050209より その唯一的な実装であるMS.NETの間違いを正せるだけの競争力のある実装を作るのを手伝ってみよう を読んで、私はわりと互換性重視かな? とか思っていたのですが・・・ http://bugzilla.ximian.com/show_bug.…

Double.TryParseは例外をスローしない?

http://bugzilla.ximian.com/show_bug.cgi?id=72221でMonoが16進数のパースが出来ないという不具合報告がありました。 using System; using System.Globalization; class X { public static void Main () { string str = "0dead"; double d; // Console.Writ…

続mono --profile

他の環境では起きないらしいので、ウチの環境に問題があるのかしら。gdb上で実行してみたところ、g_ptr_array_freeで配列を解放しているところでメモリの不正アクセスが発生しています。しかも、--traceなどのオプションを指定すると発生しなくなったりと困…

mono --profile

プロファイラがこける件ですが色々試してみたところ、 System.Console.WriteLine (0); これだけでも駄目でした。引数が文字列の場合は問題が発生しないというのも謎です。

MacでWinForms

を使おうと色々やっているのですが、どーしてもlibgdiplus(というかcairo)がmakeできません。 ./configure: line 18938: syntax error near unexpected token `XRENDER,' ./configure: line 18938: ` PKG_CHECK_MODULES(XRENDER, xrender >= 0.6,' configure…

Mono on Macの実力

http://d.hatena.ne.jp/akiramei/20050202#p1のテストをMac上でも実行してみました。参考までにAthlon64 3200+(2.2GHz)での結果を載せておきます。 n1 - 00:00:02.1250000 (90019 KB) n2 - 00:00:02.9530000 (76348 KB) n3 - 00:00:01.9060000 (35332 KB) G4…

パフォーマンス関連

実験君1 class Num { public static char utoa (ulong u) { char tmp = new char [20]; int i = tmp.Length; do { tmp [--i] = (char)(u % 10 + '0'); } while ((u /= 10) > 0); char [] cs = new char [tmp.Length - i]; Array.Copy (tmp, i, cs, 0, cs.Le…

mcsバグ

Monoのパフォーマンステストをやってたらhttp://bugzilla.ximian.com/show_bug.cgi?id=72061を発見。何故、発見できたかはつっこまない方向で。(^^;

NumberFormatterが採用

Kazukiさん、おめでとうございますー。プログラムは何よりもまずは正しく動かないとね。とは言ってもパフォーマンスが気になるのはみんな一緒のようで、各自チューニングをやっているみたいです。Kazukiさんは、StringBuilderの代わりに独自のCharBufferをこ…

Test case for Integer and Floating point formatters (17/18)

テストケースを更新。doubleのカスタム書式が残っていますが、取り合えずココまでということに。で、Mono-devel-listに投げたら大きすぎると止められてしまいました。(^^;(追記) 一部のテストでNumberFormatInfoを使っていなかったのを修正しました。Kazuki…

NumberFormatterのパフォーマンス

id:atsushienoさんのテストによるとメモリが食うようになったらしいです。コアライブラリなので可能な限りパフォーマンスは良くしたいので、ちょこちょこ弄ってみましたが、全然変わらず。 StringBuilder sb = new StringBuilder(); sb.Append (str); みたい…

そろそろ1.1.4

が、リリースされそうです。追い込み状態なのかSVNからチェックアウトしたらmakeが通りませんでした。(^^;(追記) あ、KazukiさんがMono-devel-listに撃って出ている。がんばれー。もし、採用されなかったら私のテストでのエラー件数をbugzilaに報告して援護…

Test case for Integer and Floating point formatters (11/18)

テストケースを更新。やっとdouble型へ。

Test case for Integer and Floating point formatters (9/18)

テストケースを更新。intについてはほぼ完了。カスタムフォーマットは途中で気力が無くなったので後半は甘くなっているかも。(^^;

Test case for Integer and Floating point formatters (2/18)

http://bugzilla.ximian.com/show_bug.cgi?id=71112であるように、数値のフォーマッティング関係が結構不具合が多いです。自分がMonoを使って仕事をする場合は、この辺は致命傷になるのでちまちまテストケースを書いてみることに。ただ、型(byte/sbyte/short…

テストケースという名の苛め

KazukiさんがIntegerFormatterを作り直しているので途中までのテストケースをアップしておきます。(追記) テストケースにFのパターンを追加 現状のMonoをテストするとこんな感じ。 ...F...F...F.F...F...F.F.F.F.F.F.F.F...F...F...F.F...F...F..F.F..F.F.F.…