小编mda*_*dag的帖子

在C中使用dlopen时,有没有一种优雅的方法来避免dlsym?

lib.so如果在运行时满足特定条件,则需要动态打开共享库。该库包含约700个函数,我需要加载所有符号。

一个简单的解决方案是定义指向其中包含的所有符号的函数指针lib.so,使用加载库dlopen,最后使用来获取所有符号的地址dlsym。但是,鉴于功能的数量,实现此解决方案的代码非常繁琐。

我想知道是否存在一个更优雅,更简洁的解决方案,也许是通过适当地使用宏来定义函数指针。谢谢!

c function-pointers shared-libraries dlopen

7
推荐指数
2
解决办法
3627
查看次数

标签 统计

c ×1

dlopen ×1

function-pointers ×1

shared-libraries ×1