1

はじめに : Trac SQLite を PostgreSQL バックエンドに移行しようとしています。そのためには psycopg2 が必要ですwww.initd.org の恥ずかしい暴言をクリックした後、最新バージョンをダウンロードして実行してみsetup.py installました。これはうまくいかず、mingwが必要だと言ってくれました。そこで、mingwをダウンロードしてインストールしました。

問題: 実行時に次のエラーが表示されるようになりました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

私が試したこと - -L オプションのスラッシュに気づいたので、setup.cfg の library_dirs オプションに手動で PostgreSQL lib ディレクトリを入力しましたが、役に立ちませんでした (呼び出しにはバックスラッシュ付きの -L オプションがありました。しかし、エラーメッセージは同じままでした)。

4

2 に答える 2

2

Windows用のpsycopg2のバイナリビルドを試しましたか? それがあなたの python で動作する場合、手動でビルドする必要性が軽減されます。

ランダムな人々がさまざまなリストでこの質問をするのを見てきました.1つの推奨事項は、この問題を回避するために手作業でpostgresqlを構築することです.

于 2008-09-24T10:59:27.770 に答える
1

Windows で拡張機能をコンパイルするのは難しい場合があります。ただし、コンパイル済みのライブラリが利用可能です: http://www.stickpeople.com/projects/python/win-psycopg/

于 2008-09-24T11:00:28.033 に答える