重新链接使用更新共享库的应用程序与隐式链接?

比方说,我改变了一个共享库,并重新编译它。
我是否必须重新链接使用该共享库的所有主要应用程序(如果我正在使用带有隐式链接的共享库 – #include "myLib.h" ),或者在这些应用程序加载时自动完成重新链接?

只有当库的应用程序二进制接口(ABI)与以前的版本不兼容时才需要重新编译 – 如果某些公用函数被删除或签名被改变,某些结构的大小被改变,虚拟函数的顺序被改变和其他一些情况。

否则,您不需要重新链接 – 这是使用共享库的主要优点之一,允许在不分发新版本的应用程序的情况下分发它们的新版本。

你不应该重新链接。 程序启动时,共享库自动链接。 不要把它看作是“重新”链接,它们并不是在物理上联系在一起的。