boost升级以后luabind无法编译了

boost升级以后luabind无法编译了

将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即可

你可能感兴趣的:(boost升级以后luabind无法编译了)