尝试将 boost.serialization 包含到我的 VS 项目中时遇到问题
Posted
技术标签:
【中文标题】尝试将 boost.serialization 包含到我的 VS 项目中时遇到问题【英文标题】:Having trouble when trying to include boost.serialization into my VS project 【发布时间】:2014-01-18 11:35:31 【问题描述】:所以我想将 Boost.serialization 加入我的项目,但我只想从你获得的 boost 包中获取该库。我构建了 boost 东西,所以我可以访问序列化库的 .lib 文件。 我得到的是;
libboost_serialization-vc100-mt-1_55
libboost_serialization-vc100-mt-gd-1_55
libboost_wserialization-vc100-mt-1_55
libboost_wserialization-vc100-mt-gd-1_55
我把这些文件放到一个新文件夹中,并将我的 VS 项目链接到这些文件到额外的 lib 目录。 我还从 boost 包中获取了序列化文件夹,并将其放入与我的项目链接的包含文件夹中。
当我现在尝试构建我的应用时,我得到了这些错误;
IntelliSense: cannot open source file "boost/config.hpp"
IntelliSense: cannot open source file "boost/operators.hpp"
IntelliSense: namespace "boost" has no member class "totally_ordered1"
我应该如何解决这些错误?我是否需要添加库想要的所有 .hpp 文件,或者是否有其他方法可以解决这个问题? 谢谢:)
【问题讨论】:
【参考方案1】:您提到您构建了 boost,然后将一些标头移动到您的项目中。后者是不可取的 - 将 boost 包含和库留在您安装它们并构建 boost 的位置。
在项目⇒属性⇒配置属性中,添加
Include Directories
的*** boost 目录(例如,c:\boost)
包含构建的 boost 库的目录到 Library Directories
(例如,c:\boost\lib)
如果在添加之后仍然出现 IntelliSense 错误
Reference Directories
的“$(ProjectDir)”
【讨论】:
以上是关于尝试将 boost.serialization 包含到我的 VS 项目中时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章
如何为 boost::serialization 指定一个 nvp 包装器?
为什么我不能编译Boost.Serialization演示?