如何解决CDLL找不到共享对象
我在/ usr / lib中具有共享的目标文件 libalgo.so 。 ls -al /usr/lib
给予
-rwxr-xr-x 1 root root 14264 Jul 6 06:57 libalgo.so
-rwxr-xr-x 1 root root 403496 Oct 8 12:07 libnlopt.so.0
我必须在python中导入此共享库
from ctypes import *
try:
lib = '/usr/lib/libalgo.so'
algo_lib = CDLL(lib)
print('algo_lib loaded')
except Exception as e:
print(e)
运行此代码时,我收到一条错误消息,提示无法读取共享对象。没有这样的文件...
我还在LD_LIBRARY_PATH中添加了/ usr / lib。此错误仅发生在我无法进入本地计算机的远程环境中。
解决方法
TL; DR libalgo.so已为arm编译。
我们正在为x86机器上的手臂系统开发。其中一个deb软件包以错误的共享库结束。而且python给出的错误信息充其量是令人误解的。该消息使我相信python找不到该文件,而不是显示无效的目标文件之类的东西。我不确定为什么会给出这样的错误消息,对此将提供更多信息。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。