2013-06-11 2 views
0

OS 10.8.4, 파이썬 2.7, PostgreSQL의 9.2Psycopg2의 설치, - OS 10.8.4, 파이썬 2.7, PostgreSQL의 9.2

나는 Psycopg2를 얻으려고 노력 지난 10 + 시간을 보내고 있었어요 장고가 설치 지금 경고와 구글이를 도와 줄 수가 없어 실패 수신하고 있습니다 :

PostgreSQL의 9.2 파이썬 2.7을 다시 설치, 기존의 모든 Psycopg2 & PostgreSQL의 파일을 청소 한 후, 나는 여전히 _PQbackendPID의 오류가 발생했습니다 Pip와 함께 Psycopg2를 설치하려고 할 때. 그래서 설치에 설정 ARCHFLAGS을 변경 시도 :

$ sudo env ARCHFLAGS="-arch i386 -arch x86_64" pip install psycopg2 

을 그리고 이상 반복 몇 가지 오류 및 경고받은 :

warning: no files found matching '*.py' under directory 'ZPsycopgDA' 
warning: no files found matching '*.gif' under directory 'ZPsycopgDA' 
warning: no files found matching '*.dtml' under directory 'ZPsycopgDA' 
warning: no files found matching '*' under directory 'psycopg2da' 
warning: no files found matching '*' under directory 'debian' 
no previously-included directories found matching 'doc/src/_build' 
warning: no files found matching 'ChangeLog' 

이 :

clang: warning: argument unused during compilation: '-mno-fused-madd' 

이 :

psycopg/pqpath.c:1177:17: warning: array index of '3' indexes past the end of an array (that contains 1 elements) [-Warray-bounds] PyTuple_SET_ITEM(dtitem, 3, tmp); 

(that that

./psycopg/config.h:71:13: warning: unused function 'Dprintf' [-Wunused-function] 

이 : 마지막으로

psycopg/diagnostics_type.c:64:54: warning: implicit conversion loses integer precision: 'Py_intptr_t' (aka 'long') to 'int' [-Wshorten-64-to-32] 
errortext = PQresultErrorField(self->err->pgres, (Py_intptr_t) closure); 

, 나는이 얻을 그러나

Successfully installed psycopg2 

을, I를 마지막 메시지는 인덱스 1-6)

이 등장 Python으로 이동 :

~/ $ python2.7 
Python 2.7.5 (v2.7.5:ab05e7dd2788, May 13 2013, 13:18:45) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import psycopg 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named psycopg 
>>> import psycopg2 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/Library/Python/2.7/site-packages/psycopg2/__init__.py", line 50, in <module> 
    from psycopg2._psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID 
ImportError: dlopen(/Library/Python/2.7/site-packages/psycopg2/_psycopg.so, 2): Symbol not found: _PQbackendPID 
    Referenced from: /Library/Python/2.7/site-packages/psycopg2/_psycopg.so 
    Expected in: flat namespace 
in /Library/Python/2.7/site-packages/psycopg2/_psycopg.so 

그리고 우리의 옛 친구 _PQbackendPID가 반환되었으며 문제 해결을위한 리소스가 부족합니다.

답변

0

런타임에 연결된 libpq처럼 보입니다. _psycopg.so은 컴파일 된 libpq과 같지 않습니다.

DYLIB_LIBRARY_PATH을 확인하십시오. 또한 install_name_tool을 사용하여 이 있는지 확인하거나 규정되지 않거나 절대 경로가 libpq.dylib인지 확인하십시오.