rubyscript2exeでshebangに-Ksを付ける方法
先日の日記「rubyscript2exeの困りごと」で変換できないと書いたSJISなスクリプトだが、以下のようにすると回避できるようだ。
まず、rubyscript2exe sample.rb等で普通にsample.exeを作る。
次に、内部ファイルを取り出す。これには--eee-justextractというオプションをつければよいのだが、カレントディレクトリに展開されてしまうので、適当にサブフォルダを作るとよい。
mkdir tmp cd tmp ..\sample.exe --eee-justextract
展開されたファイルのうち、empty.rbという空のファイルに#! ruby -Ksを入れて保存する。あとは以下のようにしてexeを作れば完成。
eee.exe app.eee ..\sample_sjis.exe
Rakefileに書けば自動化もできそう。
追記:調査中に作者のErikにメールで質問したらすぐ返事してもらえた。えらい。rubyscript2exe超オススメ!(とか宣伝しておく)