先日2.6 finalがリリースされたIronPythonですが、
今日changelogをみると「メタクラスを使ってないとき云々」と気になる記述が。
というわけで、最新のソースからipy.exeをビルドして試してみることにします。
やり方を以下にメモ。
---------------------------
(1) VS 2008をインストールしておく。
(2) IronPythonのソースコードをダウンロードして展開。
(3) コマンドプロンプトを開き、.slnがあるディレクトリにcd。
readme.htmlを読むと、ビルドするには、コマンドラインから、
c:¥Windows¥Microsoft.NET¥Framework¥v3.5¥MSBuild.exe IronPython.sln
とせよ、とあります。これでデバッグ版のipy.exeが作られます。
(4) 今回はリリース版を試したいので、以下のコマンドラインで。
c:¥Windows¥Microsoft.NET¥Framework¥v3.5¥MSBuild.exe /p:Configuration=Relaase
これでリリース版のipy.exeが作られます(とはいえ、デバッグ版とどこが違うのかは未検証です)。
ただし、このままだとバイナリの配布物にはついてくるPythonの標準モジュールがないので、ほぼ使えません。そこで、
(5) バイナリで配布されているIronPythonの/Libディレクトリを、先ほどビルドしたipy.exeがあるディレクトリの/Libに上書きします。
このとき、すでにある.pyファイルを上書きしないように注意してください。
---------------------------
試してみると、メタクラス云々のところを書き換えてやると(2.6 finalと比べて)パフォーマンスがちょっとだけあがりました。
やきもきさせるなー。年末なのに。
今日changelogをみると「メタクラスを使ってないとき云々」と気になる記述が。
というわけで、最新のソースからipy.exeをビルドして試してみることにします。
やり方を以下にメモ。
---------------------------
(1) VS 2008をインストールしておく。
(2) IronPythonのソースコードをダウンロードして展開。
(3) コマンドプロンプトを開き、.slnがあるディレクトリにcd。
readme.htmlを読むと、ビルドするには、コマンドラインから、
c:¥Windows¥Microsoft.NET¥Framework¥v3.5¥MSBuild.exe IronPython.sln
とせよ、とあります。これでデバッグ版のipy.exeが作られます。
(4) 今回はリリース版を試したいので、以下のコマンドラインで。
c:¥Windows¥Microsoft.NET¥Framework¥v3.5¥MSBuild.exe /p:Configuration=Relaase
これでリリース版のipy.exeが作られます(とはいえ、デバッグ版とどこが違うのかは未検証です)。
ただし、このままだとバイナリの配布物にはついてくるPythonの標準モジュールがないので、ほぼ使えません。そこで、
(5) バイナリで配布されているIronPythonの/Libディレクトリを、先ほどビルドしたipy.exeがあるディレクトリの/Libに上書きします。
このとき、すでにある.pyファイルを上書きしないように注意してください。
---------------------------
試してみると、メタクラス云々のところを書き換えてやると(2.6 finalと比べて)パフォーマンスがちょっとだけあがりました。
やきもきさせるなー。年末なのに。