Mingw下bjam编译Luabind

Mingw下bjam编译Luabind
环境:
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

(转载请注明来源于金庆的专栏)


你可能感兴趣的:(Mingw下bjam编译Luabind)