共享库,内部链接到静态库

时间:2017-11-26 23:26:08

标签: c++ shared-libraries static-linking

我有一个名为 MyLib 的共享库。我已将 MyLib 链接到静态版本的Boost和其他三个库。

MyLib 不会公开这些链接库的任何功能。换句话说, MyLib 的公共接口标头未提及或包含Boost或任何其他库。

我已经构建了 MyLib 并获得了.lib(.a)和.dll(.so)文件。

现在,我有 MyEXE ,这是一个链接到 MyLib 的程序。到目前为止,一切都很顺利。

如果我需要Boost的一些功能或其他三个库用于 MyEXE

  • MyEXE 与Boost或其他图书馆相关联是否安全?我会面临任何ODR问题吗?
  • 如果可以链接到它们,我应该链接到完全相同版本的Boost以及与 MyLIB 一起使用的其他库吗?
  • 上一个场景看起来不好吗?我应该遵循更好的方案吗? (分发源代码并将链接过程保留给最终开发人员不是我的选择)

0 个答案:

没有答案