Skip to main content
 首页 » 编程设计

python之freebsd 上的 Linux 库 (ibm_db libdb2.so.1)

2025年05月04日26lautakyan007

我正在尝试在 bsd 上使用专为 linux 设计的 lib 用于 IBM-db 连接:

我已经按照适用于 linux 的 ibmdocs 安装,并将所需的 linux 库放在/compat/linux/lib/中

但是我得到导入错误:

>>> import ibm_db 
Traceback (most recent call last): 
  File "<stdin>", line 1, in <module> 
ImportError: Shared object "libdb2.so.1" not found, required by "ibm_db.so" 

如果我手动将文件放在/usr/lib 或符号链接(symbolic link)中,我会收到读取错误:

>>> import ibm_db 
Traceback (most recent call last): 
  File "<stdin>", line 1, in <module> 
ImportError: /usr/lib/libdb2.so.1: Undefined symbol "strcspn" 

如果有人能对此提供帮助,我将永远感激!!

我已经成功安装了 ibm_db 和 ibm_db_sa,我只是认为尝试在 bsd 上使用 linux 应用程序更像是一个问题。

请您参考如下方法:

由于它在/usr/lib 中寻找库,您似乎正在运行 Python 的 FreeBSD 版本。

由于 FreeBSD 的 Linux 兼容性是每个进程 兼容性,您不能将 Linux 库加载到 FreeBSD 进程中。如果要动态加载 Linux 库,则需要运行 Linux 版本的 Python。