编译提升精神关键字解析器示例

Compile Boost Spirit Keyword Parser Example

本文关键字:关键字 编译      更新时间:2023-10-16

我在编译 boost 关键字解析器的示例代码时遇到了一些问题。我正在使用boost 1.63.0gcc 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 编译示例,编译器和提升版本都有效。

我尝试在 Centos 5 和 Ubuntu 14.04 上编译。我引用的具体示例可以在spirit/repository/example/qi/keywords.cpp

有谁知道关键字解析器是否会在 c++11 中编译,或者我应该回到使用 Nabialek 技巧来实现这些目的?或者是否有人在正确的方向上有任何观点或暗示我做错了什么?

我相信

我有我尝试用g++ -I boost-1.63.0/include -DBOOST_RESULT_OF_USE_TR1 ~/keywords.cpp编译的答案,它可以编译。此解决方案在此处的错误报告中找到:https://svn.boost.org/trac/boost/ticket/11493