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.lib
C:\PostgreSQL\8.4\lib
明らかな何かが欠けているように感じますが、これを機能させることができず、何が間違っているのかわかりません。どんな助けでも大歓迎です。
アップデート
2 つの重要な詳細について言及するのを忘れていました。
まず、C:\PostgreSQL\8.4\bin
PATH に追加しました。私の知る限り、これは期待どおりに機能しますpg_config
。欠落に関するエラーを過ぎて、現在のエラーになったためです。
lib
次に、とディレクトリを PATH に追加しようとしましたinclude
が、エラーは変わりませんでした。
また、Postgres のインストールはそれ自体で正常に動作することにも言及する必要があります。