postgresql-simpleとりわけパッケージを使用するスタックプロジェクトをセットアップしようとしています。しようとするとstack build、すべての依存関係がpostgresql-simple問題なくインストールされますが、スタックpostgresql-simple自体のインストールに問題があります。次のエラーが表示されます。
C:project> stack build --extra-include-dirs="C:\PostgreSQL\8.4\include" --extra-lib-dirs="C:\PostgreSQL\8.4\lib"
... omitted ...
*****************
--extra-include-dirs=C:\PostgreSQL\8.4\include
*****************
--extra-include-dirs=C:\Users\User\AppData\Local\Programs\stack\x86_64-windows\msys2-20150512\mingw32\include
--extra-include-dirs=C:\Users\User\AppData\Local\Programs\stack\x86_64-windows\msys2-20150512\mingw64\include
*****************
--extra-lib-dirs=C:\PostgreSQL\8.4\lib
*****************************
--extra-lib-dirs=C:\Users\User\AppData\Local\Programs\stack\x86_64-windows\msys2-20150512\mingw32\lib
--extra-lib-dirs=C:\Users\User\AppData\Local\Programs\stack\x86_64-windows\msys2-20150512\mingw64\lib
Process exited with code: ExitFailure 1
Logs have been written to: C:\Users\User\Desktop\draftkings\NFAccuracy\.stack-work\logs\postgresql-libpq-0.9.1.1.log
Configuring postgresql-libpq-0.9.1.1...
Setup.hs: Missing dependency on a foreign library:
* Missing C library: pq
This problem can usually be solved by installing the system package that
provides this library (you may need the "-dev" version). If the library is
already installed but in a non-standard location then you can use the flags
--extra-include-dirs= and --extra-lib-dirs= to specify where it is.
ファイル内のパスも指定しようとしましたがstack.yaml、同じエラーです。
...\mingw64\libライブラリとインクルード ファイルを postgres インストールから前述のフォルダーとフォルダーに手動でコピーしようとしました...\mingw64\include。同じエラー。
私は自分のフォルダにファイルを持ってlibpq.dllいます。libpq.libC:\PostgreSQL\8.4\lib
明らかな何かが欠けているように感じますが、これを機能させることができず、何が間違っているのかわかりません。どんな助けでも大歓迎です。
アップデート
2 つの重要な詳細について言及するのを忘れていました。
まず、C:\PostgreSQL\8.4\binPATH に追加しました。私の知る限り、これは期待どおりに機能しますpg_config。欠落に関するエラーを過ぎて、現在のエラーになったためです。
lib次に、とディレクトリを PATH に追加しようとしましたincludeが、エラーは変わりませんでした。
また、Postgres のインストールはそれ自体で正常に動作することにも言及する必要があります。