(2007-03-06)
由於想要在一個原生應用裡提供指令碼功能,而Python的發布不能不說是一件麻煩事。因為所需要的指令碼功能很簡單,所以決定試試傳說中的Lua。
第一步,下載源碼。雖然Lua有提供二進位版本下載,但是因為我是用Turbo C++ Explorer(即C++Builder的免費版),所以我決定還是自己編譯一下源碼。下載位置當然是Lua的官方網站:http://www.lua.org。
第二步,編譯安裝。源碼裡只提供了GCC用的MAKE檔案和VC用的一個BAT檔案,BCB則需要自己動手了。開始不知道什麼地方搞錯,總是編譯不對——雖然編譯成功,但是執行出錯。折騰了一陣子才總算大功告成,相應的編譯參數如下:
bcc32 -DNDEBUG -DNO_STRICT;_NO_VCL -Hc -tWD -w-par -O2 -b- -k- -vi -tWM -tW- -c -DLUA_BUILD_AS_DLL -P- l*.c
del lua.obj
del luac.obj
ilink32 -Tpd -Gn -j -x -Gi c0d32.obj lapi.obj lauxlib.obj lbaselib.obj lcode.obj ldblib.obj ldebug.obj ldo.obj ldump.obj lfunc.obj lgc.obj linit.obj liolib.obj llex.obj lmathlib.obj lmem.obj loadlib.obj lobject.obj lopcodes.obj loslib.obj lparser.obj lstate.obj lstring.obj lstrlib.obj ltable.obj ltablib.obj ltm.obj lundump.obj lvm.obj lzio.obj, lua51.dll, , import32.lib cw32mt.lib, ,
del *.tds
del *.obj
bcc32 -D_isatty=isatty -DNDEBUG -DNO_STRICT;_NO_VCL -Hc -w-par -O2 -b- -k- -vi -tWC -tWM -tW- -c -DLUA_BUILD_AS_DLL -P- lua.c
ilink32 -Tpe -Gn -j -x c0x32.obj lua.obj, lua51.exe, , import32.lib lua51.lib cw32mt.lib, ,
del *.tds
del *.obj
第三步,Hello world。運行編譯成功的lua51.exe試試:
print "Hello world!"
搞定。
剩下的工作就是讀雲風譯的LUA文檔學習了——唉,上了年紀以後學習新東西的難度大多了。-_-|||