Lua メモ
6年ぶりくらいにLuaを触る。
ほぼすべてを忘れているのでメモ。
・Luaを落とす。現在は5.2が最新
http://www.lua.org/download.html
・LuaをPコード(バイナリ)化
VS2010Expressでコンソール->空プロジェクトを作成して落としたLuaソースを入れてLuaをビルド.(ただし、lua.cをビルド対象から外す)
luac.cがコンパイル用のメイン関数になっている.
・Luaのビルド。これでPコードにする
luac -o test.luab test.lua
ちなみに-sを入れれば、デバッグ情報を取ることができる。
・Luaの実行
・Luaファイル(test.lua)
・バインディング
・tolua++
DL:http://www.codenix.com/~tolua/
5.2に対応してないので少々修正が必要。
・関数置き換え
lua_setfenv → lua_setuservalue
lua_getfenv → lua_getuservalue
luaL_getn → lua_rawlen
LUA_GLOBALSINDEXも変えないといけないのか…。今日はここまで。
ほぼすべてを忘れているのでメモ。
・Luaを落とす。現在は5.2が最新
http://www.lua.org/download.html
・LuaをPコード(バイナリ)化
VS2010Expressでコンソール->空プロジェクトを作成して落としたLuaソースを入れてLuaをビルド.(ただし、lua.cをビルド対象から外す)
luac.cがコンパイル用のメイン関数になっている.
・Luaのビルド。これでPコードにする
luac -o test.luab test.lua
ちなみに-sを入れれば、デバッグ情報を取ることができる。
・Luaの実行
・Luaファイル(test.lua)
function initialize() print("Hello World Lua!!") end・組み込み先
int status, result; lua_State *L = luaL_newstate(); /* create state */ luaL_openlibs(L); luaL_dofile(L,"c:/test.lub"); lua_getglobal(L, "initialize"); if( lua_pcall(L, 0, 1, 0) != 0 ) { printf("関数呼び出し失敗\n"); }
・バインディング
・tolua++
DL:http://www.codenix.com/~tolua/
5.2に対応してないので少々修正が必要。
・関数置き換え
lua_setfenv → lua_setuservalue
lua_getfenv → lua_getuservalue
luaL_getn → lua_rawlen
LUA_GLOBALSINDEXも変えないといけないのか…。今日はここまで。
コメント
コメントを投稿