CDLL 找不到共享对象
CDLL can not find find shared object
我在 /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 机器上的 arm 系统开发。其中一个 deb 包以错误的共享对象告终。 python 给出的错误消息充其量也具有误导性。该消息没有显示诸如无效目标文件之类的内容,而是让我相信 python 无法找到该文件。我不确定为什么会出现这样的错误消息,如能提供更多相关信息,我们将不胜感激。
我在 /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 机器上的 arm 系统开发。其中一个 deb 包以错误的共享对象告终。 python 给出的错误消息充其量也具有误导性。该消息没有显示诸如无效目标文件之类的内容,而是让我相信 python 无法找到该文件。我不确定为什么会出现这样的错误消息,如能提供更多相关信息,我们将不胜感激。