我正在构建一个使用以下Boost header 的程序(我正在使用Microsoft Visual C++ 10),

#include <boost/filesystem.hpp>
#include <boost/date_time.hpp>
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/info_parser.hpp>
#include <boost/filesystem.hpp>
#include <boost/foreach.hpp>
#include <boost/thread.hpp>

现在显然该程序只需要date_timefilesystemregexsystemthread的库二进制文件。

但是,我在寻找序列化库时遇到链接错误。



我有两个问题:
  • 上面的哪个头文件需要序列化库?
  • 在哪里可以找到需要二进制库的 header 列表(以及与它们关联的库)以及哪些仅 header ?我已经寻找了很长时间,但似乎找不到。
  • 最佳答案

  • Boost.PropertyTreeBoost.DateTime都可能要求libboost_serializationBoost.PropertyTreeBoost.DateTime库都支持与Boost.Serialization集成,因此其中之一可能要求链接序列化库。我的钱是放在Boost.PropertyTree上的,因为上面的日期/时间链接指定您必须显式包括序列化 header 才能获得对它的支持,因此,除非您包括这些文件,否则Boost.DateTime不太可能需要序列化库。
  • 这是support automatic linking的那些Boost库的列表,因此它们需要链接到库文件。这是header-only libraries的列表。我不确定这两个集合的并集是否构成了整个boost库,但是看起来很完整。
  • 关于c++ - 可序列化的Boost库 header 和仅 header 的库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8224913/

    10-11 22:06
    查看更多