hirax.net::Tech-logs::2009-06-04

2009-06-04[n年前へ]

rubyscript2exe.rb の Frozen String error 

Rubyスクリプトを単独で動作可能なアプリケーションにしてくれるのが RubyScript2Exe(rubyscript2exe.rb)だが(参考記事)、Rubyのバージョンによっては"Frozen String error"を吐いて、動かない場合がある。そんな場合は、 rubyscript2exe.rb and Frozen String errorより、rubyscript2exe.rbの621行目

#$0.replace(File.expand_path("./init.rb"))
$_0=File.expand_path("./init.rb")  
alias $__0 $0  
alias $0 $_0  
に変える。これで動くようになる。($0はスクリプトの起動パスを示す"定"数です)