天地有情

LuaスクリプトをEXE化する

LuaスクリプトをEXE化する

インストールする環境にあわせて 32 ビットまたは 64 ビット版の圧縮ファイルをサイトからダウンロードします。
Lua - Joe DF's Builds - http://joedf.users.sourceforge.net/luabuilds/

以下は "32bit版" について説明します.

§1 インストール

● 32bit版
   lua-5.3.0_Win32_bin.zip
   
     展開されたフォルダーには以下のファイルが入っています。
     lua.exe
     luac.exe
     lua53.dll

   srlua-5.3.0_Win32_bin.zip

     こちらには次のファイルが入っています。
     glue.exe
     srlua.exe
     lua53.dll

(注意)lua53.dll は両方に存在しますが,バージョンが同じであれば,
    lua.exe と同じフォルダーに入れても構いません.
    展開したフォルダーを環境変数 PATH に追加して下さい.

    こちらでは,D:ドライブに [lua5.3-win] フォルダーを作成し,そこに配置しました.

lua53-win01.png



§2 使い方

Lua の主な使い方について紹介します.

lua : スクリプトの実行 ---- lua hello.lua
lua -e "print(\"Hello world!\")" --- -e オプションでワンライナーの実行もできます.
lua-i : 対話モード --- lua.exe -i
luac.exe : バイトコンパイル
luac.exe -o hello.luac hello.lua
lua.exe hello.luac

■ 実行ファイルの作成

glue "srluaのPATH" "スクリプトファイル" "生成ファイル名"

glue srlua.exe hello.lua hello.exe

■ 例えば,次のようなバッチファイルを作成した方が簡単です.

batch file名 --- lua2exe.cmd

内容:
-----------------------------------------------
glue srlua.exe %1.lua %1.exe
-----------------------------------------------

実行:
lua2exe filename (拡張子不要)


§3 サンプル

file name=foo.lua
encoding=utf-8
============================
-- lua sample test

print("hello,こんにちは")

============================

(1)cmd.exe を起動させ,foo.lua が正常に動作しているかをチェックします.

lua53-win02.png


   日本語が文字化けしています.cmd.exe はデフォルトが SJIS 対応ですので
   utf-8コードは文字化けします.次のように対策します.
   cmd.exe のプロパティ → フォントから "MS ゴシック" を選択します.

lua53-win03.png


(2)cmd.exe において次のコマンドを実行し,SJISモードを UTF-8 モードに切り替えます.
   (コードページをコマンド 「chcp 65001」で切り替えます:65001 はUTF-8)

(3)切り替わったら,もう一度 foo.lua スクリプトを実行します.

lua53-win04.png


   こんどは,日本語が正しく表示されました.

(4)それでは,上記に掲げたバッチファイル lua2exe.cmd で EXE化します.
   (a) lua2exe foo (拡張子は付けない)を実行すると, foo.exe が生成されます.

lua53-win06.png

   (b) 続いて,生成された foo.exe を動作させます.

lua53-win05.png


(EOF)
スポンサーサイト
  1. 2015/07/27(月) 10:18:00|
  2. Program