Textデータを変換するツールをWindows上で動かす必要がでてきたので、 Rubyで簡単に書いて、なおかつexeとして動かしたいと思って調べました。 (rubyの入っていない環境でも動かしたかったので) ぴったしのサイトが見つかり、簡単にできそうなことがわかりました。 RubyInstallerのRuby2.0でRubyInlineとOcraを使ってexe化する しかし、最新版の組み合わせではexe化するときにエラーが発生したため、動いた組み合わせをメモとして残しておきます。 === Adding user-supplied source files C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/ocra-1.3.3/bin/ocra:1121:in `initialize': No such file or directory @ rb_sysopen
前の日記までの方法では限界があるのでRubyをコンパイルする正解を探していたら、ついに発見しました。 oneclick rubyinstallerを使う ・oneclick rubyinstaller のページからrubyinstallerをゲットします。 ・解凍したら c:\rubyinstaller などに配置します。READMEを読みましょう。 ・UTF-8日本語を正常に扱うために、コンパイラはmingw64-32-4.7.2を使ってDevKitを構成することにします。 ・既存のRubyにパスの通ったコマンドプロンプトを起動して先ずはDevKitを作ります。 cd c:\rubyinstaller rake devkit DKVER=mingw64-32-4.7.2 ・クロスコンパイル指定でconfigureしないとこけるので、config\ruby_installer.rbの130
環境は Windows 8.1 64bit。mingw32 の Ruby 2.1 をビルドする。mingw64 は試してない。2.2 とか 2.0 も多分同じやり方でできると思う。 rubyinstallerを使って完璧なRuby-2.1.0/2.1.1をコンパイル/ビルドする方法こちらのページのやり方を参考に。 このページの通りにやれば問題なく Ruby 2.1 をビルドできる。 というわけでとりあえず GitHub の RubyInstaller のリポジトリ からソースコードをダウンロード(ページ右の方にある DOWNLOAD ZIP でダウンロードできる)。んで、rake devkit すれば DevKit が作れるってことらしいんだけど、なぜか bash のダウンロードに失敗してビルドできない。 devkit で使う Mingw64 や Msys を SourceForge の
つまり 超簡単に Ruby プログラムを exe にする新しい方式 (構想) の記事にあるやり方を Ruby 2.1 でやってみた、という話。上記記事は Ruby 2.0 リリース前の話で実際にできるかどうか試してみないと分からなかったので、問題なくパッチが当たってちゃんと exe 化できることを確認したかった。 結論からいうとできます。ただちょっと問題があって、exeの後ろに繋げたスクリプトから他のスクリプトを require できない。ので、そのへんを fix したパッチを作った。 sfx-support 何をしてるかというと、exeの末尾からスクリプトを読み込み終わったら rb_embedded_payload を nil にするようにしてある。 もとのパッチでは rb_embedded_payload が存在する間は、埋め込みスクリプトからほかのスクリプトを require しよう
exerb は 1.9 に対応してないし、いろいろオーバースペックだと思う。ocra はテンポラリフォルダに展開して実行するのがダサすぎて論外。(参考) ということで、すごくシンプルに Ruby プログラムを exe 化する方式を考えてみました。 デモ # t.rb puts "test!"これを exe にしたい。こうします。 C:\Ruby>copy /B ruby.exe+t.rb t.exe ruby.exe t.rb 1 個のファイルをコピーしました。実行する。 C:\Ruby>t test!動いた! つまり、インタプリタとスクリプトをファイル結合するだけで exe にできてしまいます。 実装 Ruby にパッチをあててビルドする必要があります。やってることは自己解凍書庫と同じ感じです。 ruby.exe のファイルサイズをバイナリリソースとして ruby.exe 自身に持たせて
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く