c – linux dlopen:如何加载lib管理器
发布时间:2020-12-13 18:53:35 所属栏目:Linux 来源:网络整理
导读:我有相同的代码编译与不同的arch选项(FMV不起作用,因为函数返回sse,我不能将“默认”更改为sse的东西) 如何创建一个元库,在加载时检查cpu功能并加载相应的lib? (没有任何dlsym机械)? 最佳答案 实现所需目标的一种方法是链接虚拟包装器库,该库在启动时检查C
我有相同的代码编译与不同的arch选项(FMV不起作用,因为函数返回sse,我不能将“默认”更改为sse的东西) 最佳答案
实现所需目标的一种方法是链接虚拟包装器库,该库在启动时检查CPU功能,加载匹配的共享库,然后将所有函数调用转发到此共享库中的实现.
这种虚拟库可以手工实现或通过自定义脚本生成.或者您可以使用Implib.so自动生成它:
您需要实现load_mylib(分析CPUID并执行相应的实现)并将您的应用程序与生成的文件链接起来. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |