如何解决提高足迹
我想通过考虑跨平台应用程序,使用boost lib进行boost进程间,Logger,JSON和XML解析。我看到boost头的总大小约为126 MB,而构建boost库的大小约为156 MB。总计(126 + 156 = 282 MB)。我觉得这对我的系统来说有点累。确实增强了选择性组件的支持,因此我只需要构建用于进程间,JSON和XML解析的库。 换句话说,如何减小库的大小?
解决方法
在实践中,我并未发现使用您命名的这些库会产生太大的二进制文件。 (免责声明:我在生产中不使用Boost Log,所以在那里我可能会感到惊讶)。
更重要的是:请勿将Boost用于您的JSON或XML需求。您可以将其用于属性树需求,但Boost不具有XML或JSON支持。由于您对问题的措辞方式似乎对我来说就像您不知道属性树对JSON / XML施加的严格限制(例如,Parsing XML's with Boost PTree w/o tags)。
除了Boost Log之外,您提到的大多数库都是(或可以是)标头。因此,您只需要Boost Log +依赖项。您甚至可以配置一些选项来减小大小:https://www.boost.org/doc/libs/1_73_0/libs/log/doc/html/log/installation/config.html。我认为建议的示例
bjam --with-log variant=release define=BOOST_LOG_WITHOUT_EVENT_LOG define=BOOST_USE_WINAPI_VERSION=0x0600 stage
将已经跳过所有不需要的非仅头文件的库。当然,请确保从干净的登台目录开始以查看结果。
最后可能会减小磁盘上标头的大小,您可以尝试使用BCP来实现这一点,因为该原因。我不会打扰,因为这是多余的工作和复杂性,没有好处,IMO。
一些提示:
- What XML parser should I use in C++?
- https://github.com/nlohmann/json还是Rapidjson,jsoncpp等?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。