Jupyter 缺少 _sqlite3 和 pysqlite2

Jupyter missing _sqlite3 and pysqlite2

试图在 Python3.5 上获取 jupyter (ipython3) 运行,我使用

安装了它
sudo pip3 install jupyter

但是,在尝试启动 jupyter notebook 时,我收到错误消息,指出缺少模块 _sqlite3 和 pysqlite2。我尝试通过 pip3 安装它们。对于 pysqlite2,似乎没有版本可用(?)。对于 sqlite3,我得到

RuntimeError: Package 'sqlite3' must not be downloaded from pypi

Traceback (most recent call last):   File "/usr/local/lib/python3.5/site-packages/notebook/services/sessions/sessionmanager.py", line 10, in <module>
    import sqlite3   File "/usr/local/lib/python3.5/sqlite3/__init__.py", line 23, in <module>
    from sqlite3.dbapi2 import *   File "/usr/local/lib/python3.5/sqlite3/dbapi2.py", line 27, in <module>
    from _sqlite3 import * ImportError: No module named '_sqlite3'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "/usr/local/bin/jupyter-notebook", line 7, in <module>
    from notebook.notebookapp import main
  File "/usr/local/lib/python3.5/site-packages/notebook/notebookapp.py", line 79, in <module>
    from .services.sessions.sessionmanager import SessionManager
  File "/usr/local/lib/python3.5/site-packages/notebook/services/sessions/sessionmanager.py", line 13, in <module>
    from pysqlite2 import dbapi2 as sqlite3
ImportError: No module named 'pysqlite2'

有什么想法吗?

我在构建 Python3 时丢失了 libsqlite3-dev。 所以在 运行 sudo apt-get install libsqlite3-dev 和重建 Python3 之后,现在一切似乎都正常了。

我必须重新安装 python,然后它又可以工作了。

我在 Centos 7 上并从源代码构建 Python3.8。事实上,正如 Suppenkasper 所说,我需要先 sudo yum install libsqlite3x-devel.x86_64,然后再使用 sudo make altinstall.

重建 Python3.8

你可以通过yum list | grep sqlite找到准确的sqlite包名。

我在 jupyter notebook 中遇到了同样的错误。 我已经在我的 tmp 文件夹中从源代码安装了 python 3.7.2 Ubuntu 16.04.7 LTS (Xenial Xerus)。 它缺少 libsqlite3-dev 所以首先使用

安装 libsqlite3-dev
$ sudo apt-get install libsqlite3-dev

然后重建你的 python 3.7.2,这样做 在我的案例中,转到 python 安装的文件夹 /tmp/python-3.7.2 和 运行

$ cd /tmp/Python-3.7.2
$ ./configure --enable-optimizations
$ sudo make altinstall