我已经在运行 macOS sierra 的计算机上安装了 Homebrew Python。问题是 SQLite 根本不起作用:
Python 2.7.11 (default, Jul 8 2016, 15:45:55)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.24.1)] on darwin
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/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sqlite3/__init__.py", line 24, in <module>
from dbapi2 import *
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sqlite3/dbapi2.py", line 28, in <module>
from _sqlite3 import *
ImportError: No module named _sqlite3
我重新安装了python--verbose
并找到了以下信息:
*** WARNING: renaming "_sqlite3" since importing it failed: dlopen(build/lib.macosx-10.12-x86_64-2.7/_sqlite3.so, 2): Symbol not found: _sqlite3_enable_load_extension
Referenced from: build/lib.macosx-10.12-x86_64-2.7/_sqlite3.so
Expected in: flat namespace
in build/lib.macosx-10.12-x86_64-2.7/_sqlite3.so
Python build finished, but the necessary bits to build these modules were not found:
_bsddb dl imageop
linuxaudiodev ossaudiodev spwd
sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
Failed to build these modules:
_sqlite3
到底是怎么回事?我怎样才能让 SQLite 工作?