首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dlopen()加载opensc-pkcs11.so失败

dlopen()加载opensc-pkcs11.so失败
EN

Stack Overflow用户
提问于 2018-01-09 00:27:47
回答 1查看 4.3K关注 0票数 1

在尝试dlopen /usr/lib/x86_64-gnu-linux/opensc- such 11时,在应用程序中,我得到了一个库的“无法打开共享对象文件:没有这样的文件或目录”。

代码语言:javascript
复制
dlopen("/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so", RTLD_NOW | RTLD_LOCAL);

我遵循了Wiki https://github.com/OpenSC/OpenSC/wiki/Compiling-and-Installing-on-Unix-flavors上的说明。

同时也做了一个sudo apt安装opensc-pkcs11.so。该文件存在于/usr/lib/x86_64-gnu中,即库搜索路径。

还有什么需要做的吗?是否需要设置env变量?对于SoftHSM库的dlopen也是如此。

想要指出的是,当运行pkcs11 11工具命令行时,它可以工作。

代码语言:javascript
复制
$ pkcs11-tool --module /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so -I
Cryptoki version 2.20
Manufacturer     OpenSC (www.opensc-project.org)
Library          Smart card PKCS#11 API (ver 0.0)
No slot with a token was found.

因此,当我在我的应用程序中尝试相同的dlopen时,它似乎失败了。有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-09 03:47:28

当我在我的应用程序中尝试相同的dlopen时,它失败了。

no such file最有可能的原因是opensc-pkcs11.so本身依赖于其他库,而这个库是找不到的。

您可以通过ldd /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so来确认或证明这一点。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48159921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档