luabind 0.9.1在boost 1.49+和gcc-4.6.3以上版本的编译问题处理

luabind 0.9.1在boost 1.49+和gcc-4.6.3以上版本的编译问题处理

将boost更新到1.53时, 发现luabind死活编译不过, 报错如下

error: missing binary operator before token "("

根据老外的描述, boost中的BOOST_PP_ITERATION_FLAGS从1.49版本后发生了一些变化.

在git找到一个patch, 链接在此

以下简单描述

修改call_function.hpp, call_member.hpp及wrapper_base.hpp

去掉#elif BOOST_PP_ITERATION_FLAGS() == 1

更换为

#else

#if BOOST_PP_ITERATION_FLAGS() == 1

然后在源码底部加一个#endif即可

你可能感兴趣的:(luabind 0.9.1在boost 1.49+和gcc-4.6.3以上版本的编译问题处理)