gpt4 book ai didi

python - 在 Python 2.6.6 上导入 sqlite3 时找不到共享库 _sqlite3.so

转载 作者:行者123 更新时间:2023-11-28 18:51:24 26 4
gpt4 key购买 nike

好吧,我已经为此奋斗了 2 天,这通常意味着它太简单而无法实现。

我有一个嵌入式 linux 系统,我在我的 ubuntu 上交叉编译。编译python时sqlite3不在编译不上的模块列表中。

但是,_sqlite3.so 库与例如 json.so 和 ctypes.so array.so 不在同一个位置...在 Python-2.6.6/build/lib.linux868-2.6/

具有初始化函数等的实际模块位于正确的位置:在 Python-2.6.6/modules 中,也可以在目标系统中找到。

由于 so 文件丢失,我尝试使用我的 arm 编译器将其编译为共享库。这也不起作用。

没有手动编译so-file:

>>> import sqlite3
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "rootfs/python/lib/python2.6/sqlite3/__init__.py", line 24, in <module>
File "rootfs/python/lib/python2.6/sqlite3/dbapi2.py", line 27, in <module>
ImportError: /python/lib/python2.6/lib-dynload/_sqlite3.so: cannot open shared object file: No such file or directory

使用在 lib-dynloads 中找到的已编译共享库:

>>> import sqlite3
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "rootfs/python/lib/python2.6/sqlite3/__init__.py", line 24, in <module>
File "rootfs/python/lib/python2.6/sqlite3/dbapi2.py", line 27, in <module>
ImportError: dynamic module does not define init function (init_sqlite3)

编辑:我想知道我是否为 sqlite3 编译了正确的库。据我现在了解 _sqlite3.so 是 python 构建器制作的东西,而 libsqlite3.so 是构建它所需的库吗?而 libsqlite3.so 是从 Sqlite3 源代码构建的。我在这里弄错了吗?

有更多嵌入式 Linux 或 Python 经验的人知道我在这里做错了什么吗?

最佳答案

尝试在您的系统上先编译安装sqlite3,然后再编译python。或者只是

easy_install pysqlite

关于python - 在 Python 2.6.6 上导入 sqlite3 时找不到共享库 _sqlite3.so,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12385634/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com