原始碼下載
下載lua
http://www.lua.org/download.html
我拿到的版本是5.1.4
下載luabind
http://sourceforge.net/projects/luabind/
我拿到的版本是0.7
下載boost
http://sourceforge.net/projects/boost/
最新版本是1.36.0,我網路比較慢,就先用已有的1.35.0了
boost可以不需要編譯的,luabind編譯時間僅僅需要其標頭檔
建立項目
- 分別給lua和luabind建立VC項目
- 檔案>建立>從現有代碼建立項目,然後跟著嚮導走,選靜態庫項目
- lua建立項目為Lua,精確到lua-5.1.4\src檔案夾
- luabind建立項目為LuaBind,精確到luabind-0.7\luabind\src檔案夾
- 在luabind項目中建立虛擬資料夾luabind和luabind\detail,然後對應將磁碟luabind-0.7\luabind\luabind中的標頭檔加入到項目中
- 最後把這兩個項目添加到通一個解決方案Lua中
編譯
編譯Lua項目
- 將lua.c和luac.c從產生中排除或者從項目中移除
- 修改項目屬性:
- 配置屬性>常規>字元集 修改為 使用多位元組字元集
- 配置屬性>C/C++>常規>檢測64位可移植性問題 修改為 否
- 配置屬性>C/C++>進階>禁用特定警告 修改為 4996
- 可以編譯了
編譯LuaBind項目
- 修改項目屬性:
- 通用屬性>架構和引用>添加新引用 添加對Lua項目的引用
- 配置屬性>常規>字元集 修改為 使用多位元組字元集
- 配置屬性>C/C++>常規>檢測64位可移植性問題 修改為 否
- 配置屬性>C/C++>進階>禁用特定警告 修改為 4996
- 配置屬性>常規>附加元件封裝含目錄 添加對lua-5.1.4\src、luabind-0.7\luabind\、boost_1_35_0目錄的引用,當然你需要根據你本地的檔案目錄結構改成相對路徑的形式。比如在我機器上的配置為:../;http://www.cnblogs.com/../lua-5.1.4/src;http://www.cnblogs.com/../boost_1_35_0
- 將Lua項目luaconf.h 322行 #undef LUA_COMPAT_GETN 改為 #define LUA_COMPAT_GETN
- 在LuaBind項目lua_include.hpp 30行 添加語句 #include "lauxlib.h"
- 可以編譯了
2011-12-28 也可以採用tolua++,這樣可以避免引入boost。因tolua++採用的是自訂指令碼先行編譯為C++代碼,相比luabind編譯期模板產生代碼的方式,tolua++在編譯速度上有明顯優勢。這點在大項目中尤為重要。