【问题标题】:C++ dynamic linking to libraries upgradeC++ 动态链接库升级
【发布时间】:2022-01-12 04:24:25
【问题描述】:

我有一个关于动态链接库的问题。 假设我有一个需要libbar.solibfoo.so。目前它与libbar.so.100(版本1.0.0)链接。 barlibbar.so.200foo 有一个新版本,没有使用 bar v2.0.0 的任何新功能。它使用的 API 和 API 保持不变。 我可以直接升级到libbar.so.200 并且可以libfoo 动态链接到它吗?

【问题讨论】:

    标签: c++ linker dynamic-linking


    【解决方案1】:

    这是ABI稳定性的问题。

    库的“主要”版本通常会破坏 ABI 的稳定性并且无法正常工作。这是区分主要和次要版本颠簸的一种常用方法。次要版本的凹凸向后兼容,主要版本不向后兼容。

    无论哪种方式都无法保证。许多次要细节可能使其工作或不工作,并且库开发人员需要付出一些努力才能确保其工作。

    【讨论】:

      猜你喜欢
      • 2011-01-31
      • 1970-01-01
      • 2017-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多