我在Ubuntu 16.04和cmake 3.9.5上使用boost 1.66。 在我的应用程序代码上执行一些重构工作时,而不是在boost上进行重构工作时,遇到以下错误:
usr/include/boost/mpl/vector.hpp:37:1: fatal error: boost/mpl/vector/vector256.hpp: No such file or directory
# include BOOST_PP_STRINGIZE(boost/mpl/vector/AUX778076_VECTOR_HEADER)
看起来AUX778076_VECTOR_HEADER
在这里vector256.hpp
?确实,vector256.hpp
目录中没有这样的boost/mpl/vector/
。
可能是我的重构工作引起了这个问题,但我没有触摸任何cmake文件,而我所做的只是从代码中提取了一些通用的部分以使其成为基类。
任何人都可能对此有所了解吗?
您可以在这里找到此vector.hpp
:https://www.boost.org/doc/libs/1_52_0/boost/mpl/vector.hpp
编辑:
这些是我为此添加的模块set( ${PROJECT_NAME}_BOOST_COMPONENT_DEPENDENCIES thread system filesystem date_time program_options )
。我错过了什么吗?
答案 0 :(得分:2)
MPL分发最多只包含50种(不记得确切数量)用于预处理矢量(和其他类型列表容器)的类型列表条目。
如果您需要更长的向量,则必须自己创建这些文件-幸运的是,它只是复制/粘贴。