使用闭源库分发boost

Sco*_*ott 7 c++ boost multiple-versions

我有一个需要使用某个闭源C++ API的应用程序.此API与一些Boost,二进制库文件和所有文件一起分发.我喜欢在我自己的代码中使用Boost.我不能只使用他们的Boost版本,因为他们没有分发我需要的Boost的所有部分.我该怎么办?目标平台是linux,最终也是Windows.

  • 我不会跨API边界传递Boost对象.
  • 我可以将事物编译为目标文件,以便我的代码使用我的 boost标头,API的代码使用 Boost标头.这部分看起来很简单.
  • 没有得到:如何 我的代码链接我的 Boost库文件,以及API的代码链接到 Boost库文件.我是否需要围绕API编译自己的包装器 - 一个包头,其头部包括Boost - 到动态库?(这是我能想到的唯一方法来进行链接.API的Boost库文件中的符号应该与我的Boost库文件中的符号相同.我必须分两个阶段进行链接,不是吗?唯一的方法我可以链接一个程序,而不是通过制作动态库,不是吗?)

Foo*_*Bah 0

如果您仅使用仅包含头文件的 boost 库,则可以将代码与链接其他库的代码分开构建。

您使用哪些 boost 库?