ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

c – 如何构建boost序列化库

2019-07-22 23:08:45  阅读:213  来源: 互联网

标签:c compilation build boost boost-serialization


我在某处读到了必须编译boost的序列化库(我忘了在哪里阅读它,否则我会发布一个链接).

所以我从source forge下载了最新版本并将其解压缩到我项目中的路径.
现在?

我调查了该文件夹,但找不到makefile.

那么我该怎么做才能编译boost:serialization lib?

编辑:然而我尝试使用它,而不编译它,但我得到这个错误:

boost/archive/basic_xml_oarchive.hpp:92:9: error: 
no matching function for call to 'assertion_failed'
    BOOST_MPL_ASSERT((serialization::is_wrapper< T >));
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

所以我认为原因是它没有编译.是对的吗?

解决方法:

要构建Boost,请按照说明here进行操作.

根据您的评论,您只想构建Boost(序列化)的一部分.如果您按照上面的链接,有一节包含以下建议(措辞可能会有所不同,我已从Windows说明中复制它):

For a description of other options you can pass when invoking b2, type:

b2 –help

In particular, to limit the amount of time spent building, you may be interested in:

  • reviewing the list of library names with –show-libraries
  • limiting which libraries get built with the –with-library-name or –without-library-name options

键入b2 –show-libraries会产生以下结果:

The following libraries require building:
    - atomic
    - chrono
    - context
    - coroutine
    - date_time
    - exception
    - filesystem
    - graph
    - graph_parallel
    - iostreams
    - locale
    - log
    - math
    - mpi
    - program_options
    - python
    - random
    - regex
    - serialization
    - signals
    - system
    - test
    - thread
    - timer
    - wave

因此,要构建只是序列化,将选项–with-serialization传递给b2,例如使用VS2013构建所有库类型(静态/动态库,静态/动态运行时,调试/发布,单/多线程),您可以键入:

b2 toolset = msvc-12.0 –with-serialization –build-type = complete stage

请注意,如果您计划在将来的项目中使用Boost,那么构建整个项目可能更简单(即省略–with-serialization选项),以便所有库随时可以在需要时立即使用.

标签:c,compilation,build,boost,boost-serialization
来源: https://codeday.me/bug/20190722/1507682.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有