linux上动态链接期间符号的替代实现

Alternative implementation of a symbol during dynamic linking on linux

本文关键字:实现 符号 动态 链接 linux      更新时间:2023-10-16

我有一个动态链接的linux可执行文件,它使用共享库。其中一个库中有一个函数被该库中的其他函数使用——该函数的目标代码包含在这个库中。我想提供该函数的替代实现,这样,而不是调用库中的原始代码,那些其他函数将调用我的代码。

有办法吗?

如果没有对库进行新的修改,就不能这样做。

如果这些函数是全局函数或静态函数,则必须重新编译。

如果这些函数是虚拟成员函数,如果你的应用程序/库有钩子/可扩展性或工厂之类的东西来给应用程序添加一个派生对象,你可以修改它。