标签: c linux shared-libraries inclusion readelf
我正在开发一个依赖于共享库作为插件的C程序(在Linux下)。
我为每个插件提供了我的静态库中的几个函数。为了改变程序的工作流程,我需要在运行时知道插件是否会调用上述库中包含的某个函数。
我需要的是C等价物:
readelf -a ${PLUGIN_NAME} | grep ${FUNCTION_NAME}
是否有可能利用<dlfcn.h>库来实现这一目标?不用说,我不想在system()调用中执行上面的oneliner。
<dlfcn.h>
system()
由于
答案 0 :(得分:1)
您可以尝试LibELF,它允许您操作ELF二进制文件(即读取部分)。很好的例子,你可以找到here。