环境:
lua-5.1.4
luabind-0.8
Windows + Mingw gcc
luabind-0.8只提供了bjam编译方式.
按手册上的要求,设置好BOOST_ROOT和LUA_PATH后, 运行bjam, 报错:
D:\luabind-0.8>bjam --toolset=gcc
error: Unable to find file or target named
error: 'lua'
error: referred from project at
error: '.'
解决方案一, 不用bjam, 直接gcc:
http://missdeer.blogspot.com/2009/01/luabind.html
方案二, 把Jamroot改改对.
因为bjam配置的那一套看了半天还是不太懂, 所以虽然能产生结果, 但不保证是最正确的方法.
在以下语句
else if [ GLOB $(LUA_PATH) : lua5.1.dll ]
{
lib lua : : <name>lua5.1 <search>$(LUA_PATH) : : <include>$(includes) ;
}
下面再依样添加:
else if [ GLOB $(LUA_PATH)/src : lua51.dll ]
{
lib lua : : <name>lua51 <search>$(LUA_PATH)/src : : <include>$(includes) ;
}
注意有两处更改:
lua5.1 -> lua51
LUA_PATH后添加src子目录
估计该Jamroot文件针对的lua版本较低, 而最新版的lua-5.1.4目录名和文件名更改了.
生成release版本库:
bjam --toolset=gcc release
(转载请注明来源于金庆的专栏)