没有名为 _sqlite3 的模块

新手上路,请多包涵

我正在尝试在运行 Debian 5 的 VPS 上运行 Django 应用程序。当我运行演示应用程序时,它返回此错误:

   File "/usr/local/lib/python2.5/site-packages/django/utils/importlib.py", line 35, in     import_module
    __import__(name)

  File "/usr/local/lib/python2.5/site-packages/django/db/backends/sqlite3/base.py", line 30, in <module>
    raise ImproperlyConfigured, "Error loading %s: %s" % (module, exc)

ImproperlyConfigured: Error loading either pysqlite2 or sqlite3 modules (tried in that     order): No module named _sqlite3

查看 Python 安装,它给出了相同的错误:

 Python 2.5.2 (r252:60911, May 12 2009, 07:46:31)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.5/sqlite3/__init__.py", line 24, in <module>
    from dbapi2 import *
  File "/usr/local/lib/python2.5/sqlite3/dbapi2.py", line 27, in <module>
    from _sqlite3 import *
ImportError: No module named _sqlite3
>>>

在网上阅读时,我了解到 Python 2.5 应该包含所有必需的 SQLite 包装器。我需要重新安装 Python,还是有其他方法可以启动和运行该模块?

原文由 Alexander van Dijk 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 387
1 个回答

您的 makefile 似乎没有包含相应的 .so 文件。您可以通过以下步骤更正此问题:

  1. 安装 sqlite-devel (或 libsqlite3-dev 在一些基于 Debian 的系统上)
  2. 使用 ./configure --enable-loadable-sqlite-extensions && make && sudo make install

笔记

sudo make install 部分会将 python 版本设置为系统范围的标准,这可能会产生无法预料的后果。如果您在工作站上运行此命令,您可能希望将它 现有的 python 一起安装,这可以通过 sudo make altinstall 完成。

原文由 jammyWolf 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题