dlopen() 无法加载 opensc-pkcs11.so
dlopen() fails loading opensc-pkcs11.so
在尝试从应用程序中打开 /usr/lib/x86_64-gnu-linux/opensc-pkcs11.so 时,我得到了库的 "Cannot open shared object file: no such file or directory"。
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-get install opensc-pkcs11.so。
该文件存在于 /usr/lib/x86_64-gnu-linux 中,这是库搜索路径。
还有什么需要做的吗?是否需要设置任何环境变量?这同样适用于 SoftHSM 库的 dlopen。
想指出的是,当 运行 pkcs11-tool 命令行时,它有效
$ 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 时,它似乎失败了。有什么想法吗?
when I try the same dlopen within my application, that it fails
no such file
最可能的原因是 opensc-pkcs11.so
本身 依赖于其他一些库,并且 那 找不到库。
您可以用 ldd /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
确认或反驳。
在尝试从应用程序中打开 /usr/lib/x86_64-gnu-linux/opensc-pkcs11.so 时,我得到了库的 "Cannot open shared object file: no such file or directory"。
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-get install opensc-pkcs11.so。 该文件存在于 /usr/lib/x86_64-gnu-linux 中,这是库搜索路径。
还有什么需要做的吗?是否需要设置任何环境变量?这同样适用于 SoftHSM 库的 dlopen。
想指出的是,当 运行 pkcs11-tool 命令行时,它有效
$ 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 时,它似乎失败了。有什么想法吗?
when I try the same dlopen within my application, that it fails
no such file
最可能的原因是 opensc-pkcs11.so
本身 依赖于其他一些库,并且 那 找不到库。
您可以用 ldd /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
确认或反驳。