Pregunta

Introducción:Estoy intentando migrar nuestro Trac SQLite a un backend PostgreSQL, para hacerlo necesito psycopg2.Después de hacer clic en el comentario vergonzoso de www.initd.org, descargué la última versión e intenté ejecutar setup.py install.Esto no funcionó, diciéndome que necesitaba mingw.Entonces descargué e instalé mingw.

Problema:Ahora recibo el siguiente error al ejecutar setup.py build_ext --compiler=mingw32 install:

running build_ext
building 'psycopg2._psycopg' extension
writing build\temp.win32-2.4\Release\psycopg\_psycopg.def
C:\mingw\bin\gcc.exe -mno-cygwin -shared -s build\temp.win32-2.4\Release\psycopg
\psycopgmodule.o build\temp.win32-2.4\Release\psycopg\pqpath.o build\temp.win32-
2.4\Release\psycopg\typecast.o build\temp.win32-2.4\Release\psycopg\microprotoco
ls.o build\temp.win32-2.4\Release\psycopg\microprotocols_proto.o build\temp.win3
2-2.4\Release\psycopg\connection_type.o build\temp.win32-2.4\Release\psycopg\con
nection_int.o build\temp.win32-2.4\Release\psycopg\cursor_type.o build\temp.win3
2-2.4\Release\psycopg\cursor_int.o build\temp.win32-2.4\Release\psycopg\lobject_
type.o build\temp.win32-2.4\Release\psycopg\lobject_int.o build\temp.win32-2.4\R
elease\psycopg\adapter_qstring.o build\temp.win32-2.4\Release\psycopg\adapter_pb
oolean.o build\temp.win32-2.4\Release\psycopg\adapter_binary.o build\temp.win32-
2.4\Release\psycopg\adapter_asis.o build\temp.win32-2.4\Release\psycopg\adapter_
list.o build\temp.win32-2.4\Release\psycopg\adapter_datetime.o build\temp.win32-
2.4\Release\psycopg\_psycopg.def -LC:\Python24\libs -LC:\Python24\PCBuild -Lc:/P
ROGRA~1/POSTGR~1/8.3/lib -lpython24 -lmsvcr71 -lpq -lmsvcr71 -lws2_32 -ladvapi32
 -o build\lib.win32-2.4\psycopg2\_psycopg.pyd
C:\mingw\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: cannot fin
d -lpq
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1

lo que he probado - Noté las barras diagonales en la opción -L, así que ingresé manualmente mi directorio lib de PostgreSQL en la opción biblioteca_dirs en setup.cfg, sin éxito (la llamada tenía una opción -L con barras invertidas, pero el mensaje de error permaneció lo mismo).

¿Fue útil?

Solución

¿Has probado el compilación binaria de psycopg2 para windows?Si eso funciona con tu Python, mitiga la necesidad de construir a mano.

He visto a personas al azar hacer esta pregunta en varias listas y parece que una recomendación es compilar postgresql a mano para solucionar este problema.

Otros consejos

Compilar extensiones en Windows puede resultar complicado.Sin embargo, hay bibliotecas precompiladas disponibles: http://www.stickpeople.com/projects/python/win-psycopg/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top