web-dev-qa-db-ja.com

python pyenvによってインストールされたものを使用してインポートするときに '_sqlite3'モジュールが見つかりません

インストール済みpython 3.7.0 by pyenv by macOS。

sqlite3がインストールされました:

which sqlite3
/usr/bin/sqlite3

また、pipでpysqlite3をインストールしようとしました:

pip install pysqlite3

しかし、インポートsqlite3時にモジュールが見つかりません:

In [1]: import sqlite3
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-1-5239c6be4108> in <module>
----> 1 import sqlite3

~/.pyenv/versions/3.7.0/lib/python3.7/sqlite3/__init__.py in <module>
     21 # 3. This notice may not be removed or altered from any source distribution.
     22
---> 23 from sqlite3.dbapi2 import *

~/.pyenv/versions/3.7.0/lib/python3.7/sqlite3/dbapi2.py in <module>
     25 import collections.abc
     26
---> 27 from _sqlite3 import *
     28
     29 paramstyle = "qmark"

ModuleNotFoundError: No module named '_sqlite3'

BrewによってmacOSにsqlite3の開発ライブラリをインストールする必要がありますか?

10
Jingqiang Zhang

このように動作します:

CFLAGS="-I$(xcrun --show-sdk-path)/usr/include" pyenv install 3.7.0

参照:

https://github.com/pyenv/pyenv/issues/108#issuecomment-35916105

27
Jingqiang Zhang