我在编译boost关键字解析器的示例代码时遇到了一些麻烦。我正在使用boost 1.63.0
和gcc 6.3.0
并指定c ++ 11.我跑了:
g++ -std=c++11 -I boost-1.63-0/include keywords-1.cpp
并遭遇了大量的编译器错误。 第一个错误是:
no type named 'type' in struct boost::mpl::apply...
我还尝试使用gcc 4.8.2
编译示例,并使用boost 1.55.0打开c ++ 11标志,并且还收到了类似的大量错误。但是,尝试用c ++ 03编译示例,编译器和boost版本都有效。
我尝试过在Centos 5和Ubuntu 14.04上进行编译。我引用的具体示例可以在spirit/repository/example/qi/keywords.cpp
有人知道关键字解析器是否会在c ++ 11中编译,还是应该回到使用Nabialek技巧来实现这些目的?或者是否有人对正确的方向有任何意见或提示我做错了什么?
答案 0 :(得分:0)
我相信我的答案是我尝试使用g++ -I boost-1.63.0/include -DBOOST_RESULT_OF_USE_TR1 ~/keywords.cpp
进行编译并编译。此解决方案可在此处的错误报告中找到:https://svn.boost.org/trac/boost/ticket/11493