【发布时间】:2015-12-29 01:09:11
【问题描述】:
我了解dlopen/dlclose/dlsym/dlerror API 用于与
动态加载库,但这对于已经编译的二进制文件如何工作
引用 .so 库(共享库、后台/加载时间链接)的 -L 标志。编辑:我指的是在不重新启动应用程序的情况下实时更新共享库。
【问题讨论】:
-
你没有。当你想做这样的事情时,你可以使用
dlopen()和朋友。 -
你打算用这个实现什么目标?
-
您可以使用 LD_PRELOAD 在可执行文件中定义的库之前加载库。见stackoverflow.com/questions/426230/what-is-the-ld-preload-trick。
-
@Pradheep 我想实现共享库的实时更新,并在不使用 dlopen() 系列调用的情况下对使用它的应用程序产生影响,同时保持我当前的应用程序构建过程完好无损。跨度>
-
@Paul 正确的总结。根据我的研究,请参阅下面的答案以获取详细信息。