【发布时间】:2017-02-21 10:46:41
【问题描述】:
我正在尝试在 Mac 上本地使用 psycopg2。它安装得很好,至少没有错误,但是当我导入它时会收到错误消息。
我已经看到了几十个具有类似问题和解决方案的线程,这些线程和解决方案差异很大,对于这样一个常见的模块来说似乎太过分了。
谁能帮忙?
Last login: Wed Oct 12 15:47:24 on console
Gurmokhs-MBP:~ Gurmokh$ pip install psycopg2
Requirement already satisfied (use --upgrade to upgrade): psycopg2 in /Library/Python/2.7/site-packages
Gurmokhs-MBP:~ Gurmokh$ python
Python 2.7.11 (v2.7.11:6d1b6a68f775, Dec 5 2015, 12:54:16)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import psycopg2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site- packages/psycopg2-2.6.2-py2.7-macosx-10.6-intel.egg/psycopg2/__init__.py", line 50, in <module>
from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site -packages/psycopg2-2.6.2-py2.7-macosx-10.6- intel.egg/psycopg2/_psycopg.so, 2): Library not loaded: libssl.1.0.0.dylib
Referenced from: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site- packages/psycopg2-2.6.2-py2.7-macosx-10.6-intel.egg/psycopg2/_psycopg.so
Reason: image not found
>>> ^D
Gurmokhs-MBP:~ Gurmokh$
我可以看到一些副本从不同的应用程序中浮动。 我假设我可以复制其中之一。上面的消息告诉我什么在引用这个文件,但他们没有告诉我他们希望在哪里找到它。如果我知道它应该去哪里,我会试试这个。
bash-3.2# find . -name "libssl.1.0.0.dylib"
./Library/Application Support/Fitbit Connect/libssl.1.0.0.dylib
./Library/PostgreSQL/9.5/lib/libssl.1.0.0.dylib
./Library/PostgreSQL/9.5/pgAdmin3.app/Contents/Frameworks/libssl.1.0.0.dylib
./Users/Gurmokh/.Trash/Navicat for PostgreSQL.app/Contents/Frameworks/libssl.1.0.0.dylib
【问题讨论】:
-
你能谈谈你尝试过的东西吗?实际上,您需要将 libssl.1.0.0.dylib 放在可以找到的位置。
-
已编辑以显示一些尝试理解问题和我所做的事情。
-
感觉就像我在黑暗中刺伤。我已经尝试过stackoverflow.com/questions/27264574/… 和mithun.co/hacks/… 的方法,似乎没有任何效果。它让我发疯。
-
尝试另一个 Python 发行版,例如。蟒蛇;根据我的经验,依赖 Mac OS 附带的 Python 发行版通常是个坏主意。
-
您是否将 DYLD_FALLBACK_LIBRARY_PATH 设置为
./Library/PostgreSQL/9.5/lib或只是粘贴到 Anaconda 链接中?我会第二次@maxymoo 关于不使用内置 Python 的评论——但你不一定需要 Anaconda,你可以从 python.org 安装 Python。或者,老实说,使用 Docker 之类的东西——所有这些令人头疼的问题都消失了。虽然那时你必须学习一个新工具,但在我看来这是值得的......