我正在使用最新版本的 macOS 和 homebrew,brew doctor 没有发现任何问题。我只是使用 brew install python, brew install python@2 来获取最新版本的 python。
当我输入 python -c "import sqlite3" 时,我收到以下错误消息:
python2.7 -c "import sqlite3"
130 ↵ Traceback(最近一次调用最后):文件“”,第 1 行,在文件“/usr/local/Cellar/python@2/2.7.15_2/Frameworks/Python.framework/版本/2.7/lib/python2.7/sqlite3/init.py”,第 24 行,从 dbapi2 导入 * 文件“/usr/local/Cellar/python@2/2.7.15_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/sqlite3/dbapi2.py ",第 28 行,从 _sqlite3 导入 * ImportError: dlopen(/usr/local/Cellar/python@2/2.7.15_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/_sqlite3 .so, 2): Symbol not found: _sqlite3_enable_load_extension 引用自:/usr/local/Cellar/python@2/2.7.15_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/_sqlite3 .so 预期在:/usr/local/Cellar/python@2/2.7.15_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/_sqlite3 中的 /usr/lib/libsqlite3.dylib 。所以python -c "import sqlite3"
1 ↵ Traceback(最近一次调用最后):文件“”,第 1 行,在文件“/usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/ lib/python3.7/sqlite3/初始化.py”,第 23 行,从 sqlite3.dbapi2 导入 * 文件“/usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/sqlite3/dbapi2.py ",第 27 行,从 _sqlite3 导入 * ImportError: dlopen(/usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload/_sqlite3.cpython -37m-darwin.so,2):未找到符号:_sqlite3_enable_load_extension 引用自:/usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload /_sqlite3.cpython-37m-darwin.so 预期在:/usr/local/Cellar/python/3.7.2_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7 中的 /usr/lib/libsqlite3.dylib /lib-dynload/_sqlite3.cpython-37m-darwin.so
什么可能导致问题?我尝试下载python源代码并编译它,并将_sqlite3.so或_sqlite3.cpython-37m-darwin.so文件移动到brew安装文件夹中,一切正常。brew 会不会忘记公式中的某些内容?除了从源代码编译 .so 文件并手动解决问题外,我还能做什么?