我读了一些不鼓励使用DYLD_LIBRARY_PATH的文章,因为动态库的路径应该使用-install_name,@ aptath和@loader_path来修复.
在制作在Linux和Mac OS X上运行的程序方面,Mac OS X的DYLD_LIBRARY_PATH正好与Linux的LD_LIBRARY_PATH完全相同.而且,我们可以(几乎)共享同一个没有-install_name和@rpath的make文件.
我尝试psycopg2使用virtualenv 安装pip,编译看起来没问题,它说"成功安装了psycopg2",但是当我尝试在python解释器中导入它时(在virtualenv中),它表示错误:
File "<stdin>", line 1, in <module>
File "/Users/me/sites/env/trackmap/lib/python2.7/site-packages/psycopg2/__init__.py", line 67, in <module>
from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID
ImportError: dlopen(/Users/me/sites/env/trackmap/lib/python2.7/site-packages/psycopg2/_psycopg.so, 2): Library not loaded: libssl.dylib
Referenced from: /Users/me/sites/env/trackmap/lib/python2.7/site-packages/psycopg2/_psycopg.so
Reason: Incompatible library version: _psycopg.so requires version 1.0.0 or later, but libssl.0.9.8.dylib provides version 0.9.8
Run Code Online (Sandbox Code Playgroud)
问题是我pip在几周之前使用我的其他虚拟环境成功安装它,就像几个星期前一样,让它postgresql在我的Mac上工作.我想知道这是否是编译器的问题?我shortens from 64-bit to 32-bit在安装psycopg2时看到了一些警告.我的编译器是i686-apple-darwin11-llvm-gcc-4.2mac os x lion上的默认编译器.
我看到几个与psycopg2安装相关的帖子,但大多数都是通过安装在虚拟环境中解决的.那么......有人能给我一个建议吗?谢谢!非常感谢.
ps如果你需要安装psycopg2的编译日志,请告诉我,我没有在这里粘贴,因为它太长了.
我正在遵循Heroku的教程来部署Django应用程序:http://devcenter.heroku.com/articles/django#prerequisites.
一切正常,直到我到达这一部分:
$ pip install Django psycopg2
Run Code Online (Sandbox Code Playgroud)
我可以自己安装Django,但问题是psycopg2.
我一直收到这个错误:
ld: library not found for -lpq
collect2: ld returned 1 exit status
ld: library not found for -lpq
collect2: ld returned 1 exit status
lipo: can't open input file: /var/folders/_4/p6l0y0t51hd4xbq7llbyshmw0000gn/T//cc0L10mI.out (No such file or directory)
error: command 'gcc-4.2' failed with exit status 1
Run Code Online (Sandbox Code Playgroud)
我在我的机器上安装了PostgreSQL 9.1.
另外,在输出中,有这样的一堆行:
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -g -O2 -DNDEBUG -g -O3 -DPSYCOPG_DEFAULT_PYDATETIME=1 -DPSYCOPG_VERSION="2.4.4 (dt dec pq3 ext)" …Run Code Online (Sandbox Code Playgroud) 我在Mac(10.6.8)上遇到了Ruby(1.9.3),Rails和Postgres(9.0.8)的设置.每次运行时rails console我都会收到以下错误:
/Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/pg-0.13.2/lib/pg.rb:4:in `require': dlopen(/Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/pg-0.13.2/lib/pg_ext.bundle, 9): Library not loaded: @loader_path/../lib/libssl.dylib (LoadError)
Referenced from: /usr/lib/libpq.5.dylib
Reason: Incompatible library version: libpq.5.dylib requires version 1.0.0 or later, but libssl.0.9.8.dylib provides version 0.9.8 - /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/pg-0.13.2/lib/pg_ext.bundle
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/pg-0.13.2/lib/pg.rb:4:in `<top (required)>'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/bundler-1.1.4/lib/bundler/runtime.rb:68:in `require'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/bundler-1.1.4/lib/bundler/runtime.rb:68:in `block (2 levels) in require'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/bundler-1.1.4/lib/bundler/runtime.rb:66:in `each'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/bundler-1.1.4/lib/bundler/runtime.rb:66:in `block in require'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/bundler-1.1.4/lib/bundler/runtime.rb:55:in `each'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/bundler-1.1.4/lib/bundler/runtime.rb:55:in `require'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/bundler-1.1.4/lib/bundler.rb:119:in `require'
from /Users/dc/Documents/Aptana Studio 3 Workspace/http/config/application.rb:7:in `<top (required)>'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/railties-3.2.6/lib/rails/commands.rb:39:in `require'
from /Users/dc/.rvm/gems/ruby-1.9.3-head@global/gems/railties-3.2.6/lib/rails/commands.rb:39:in `<top (required)>'
from script/rails:6:in …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个指向/ usr/lib的符号链接,但我似乎没有权限,包含在root中.系统返回不允许操作.
有了优胜美地,我工作得很好,但是随着El Capitan的破产:
谁知道我能做什么?
我正试图让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,补丁处理了一些小牛队的怪癖.
有任何想法吗?
完全追溯:
线程中未处理的异常由> Traceback(最近一次调用最后一次)启动:文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/commands/runserver. py",第93行,在inner_run中self.validate(display_num_errors = True)文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/base.py ",第280行,在validate num_errors = get_validation_errors(s,app)文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/validation.py" 28行,从django.db进口车型get_validation_errors,连接文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/ INIT.py",第40行,在后端= load_backend(connection.settings_dict ['ENGINE'])文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/ init .py",第34行,在getattr中 返回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'])文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/utils.py",第27行,在load_backend中在import_module import中返回import_module('.base',backend_name)文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/utils/importlib.py",第35行 (名称)来自django.db的文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py",第14行. backends.postgresql_psycopg2.creation导入DatabaseCreation文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/creation.py",第1行,导入psycopg2.extensions文件"/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/psycopg2/ INIT.py",第50行,来自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原因:找不到图片
macos ×4
python ×3
django ×2
postgresql ×2
psycopg2 ×2
dll ×1
heroku ×1
pip ×1
ruby ×1
virtualenv ×1