我正在尝试让Django在OS X Mavericks上运行,并且我遇到了一堆错误,最新的方式是在运行python manage.py runserver
时查看是否一切正常,我收到此错误,我相信这意味着它错过了libssl:
ImportError:dlopen(/ Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/_psycopg.so,2):未加载库:@loader_path /../ lib /libssl.1.0.0.dylib引用自:/ Library / Frameworks / Python.framework / Version / 1.7 / lib / python2.7 / site-packages / psycopg2 / _psycopg.so原因:未找到图像
我已经将Python升级到2.7.6,补丁处理了一些小牛队的怪癖。
有什么想法吗?
完整追溯:
由&gt;开始的线程中未处理的异常 Traceback(最近一次调用最后一次): 在inner_run中输入文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/commands/runserver.py”,第93行 self.validate(display_num_errors =真) 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/base.py”,第280行,在验证中 num_errors = get_validation_errors(s,app) 在get_validation_errors中输入文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/validation.py”,第28行 来自django.db导入模型,连接 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/init.py”,第40行,in backend = load_backend(connection.settings_dict ['ENGINE']) 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/init.py”,第34行, getattr < /强> return getattr(connections [DEFAULT_DB_ALIAS],item) 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/utils.py”,第93行, getitem backend = load_backend(db ['ENGINE']) 在load_backend中输入文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/utils.py”,第27行 return import_module('。base',backend_name) 在import_module中输入文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/utils/importlib.py”,第35行 导入(名称) 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py”,第14行,in 来自django.db.backends.postgresql_psycopg2.creation import DatabaseCreation 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/creation.py”,第1行,in 导入psycopg2.extensions 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/init.py”,第50行,in 来自psycopg2._psycopg导入BINARY,NUMBER,STRING,DATETIME,ROWID ImportError:dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/_psycopg.so,2):未加载库:@loader_path /../ lib / libssl。 1.0.0.dylib 参考自:/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/_psycopg.so 原因:未找到图像
答案 0 :(得分:10)
这对我有用。
brew unlink openssl && brew link openssl --force
这将正确地重新创建已安装的libssl 1.0的所有链接。
答案 1 :(得分:2)
缺少psycopg2。用于Python的Postgresql数据库适配器。
您需要重新安装Postgresql。你在Mac上,所以使用brew
安装它。
brew install postgresql
如果brew输出已安装,请将其卸载并重新安装。
答案 2 :(得分:2)
似乎缺少libssl.1.0.0.dylib
。小牛队以libssl 0.9.8
为荣。你需要通过自制软件安装libssl。
如果loaderpath指向/usr/lib/
,您还需要将/usr/local/Cell/openssl/lib/
中的libssl符号链接到/usr/lib
。
答案 3 :(得分:1)
这个问题发生在我身上,因为我使用的是 posqgressapp 。这可能与沙盒有关。
删除posqgressapp并使用brew解决我的问题安装postgress。
使用HomeBrew安装Postgress:
http://www.moncefbelyamani.com/how-to-install-postgresql-on-a-mac-with-homebrew-and-lunchy/
无法在小牛队打开psql:
https://github.com/PostgresApp/PostgresApp/issues/137
答案 4 :(得分:1)
在我的OSX笔记本电脑上安装完整的PostgreSQL服务器困扰着我。卸载是笨重的,现在你有一个非常摇摆的数据库服务器只是为图书馆闲置。
我知道其他人已发布反对使用Postgres.app但我喜欢它。它干净,易于使用。关键是要记住它只是一个包含所有必要库的文件夹,以帮助在OSX盒上构建Psycopg2。只需确保在路径中添加内容,以便找到以下库:
$ PATH = $ PATH:/Applications/Postgres93.app/Contents/MacOS/bin /
(当然,这取决于您安装的Postgres.app版本。)
一旦你编译了psycopg2,你只需将Postgres.app拖到垃圾箱即可。容易腻。
我浪费了很多时间来处理所有类型的错误和psycopg2 OSX&amp; Linux,所以我把它们放在一起:
http://www.codychamberlain.com/posts/installing-psycopg2-on-osx/