Haskell 堆栈持续错误,找不到 -llibpq
Haskell Stack Persistent error, cannot find -llibpq
我已经建立了一个项目,它使用 Servant 和 Persistent,使用 PostgreSQL 支持。一切正常,当我 运行 stack ghci
时,包括迁移,但是当我 运行 stack build
时,我收到以下错误:
Linking .stack-work\distcc6475\build\ServantAuthTraining-exe\ServantAuthTraining-exe.exe ...
C://Users//Chris//AppData//Local//Programs//stack//x86_64-windows//ghc-8.8.3//mingw//bin/ld.exe: cannot find -llibpq
collect2.exe: error: ld returned 1 exit status
`gcc.exe' failed in phase `Linker'. (Exit code: 1)
-- While building package ServantAuthTraining-0.1.0.0 using:
C:\sr\setup-exe-cache\x86_64-windows\Cabal-simple_Z6RU0evB_3.0.1.0_ghc-8.8.3.exe --builddir=.stack-work\distcc6475 build lib:ServantAuthTraining exe:ServantAuthTraining-exe --ghc-options " -fdiagnostics-color=always"
Process exited with code: ExitFailure 1
我在 windows,对所有提到的技术人员来说都是新手。
我可以通过 pgAdmin 连接到数据库。
您可能需要将 --extra-include-dirs=C:\PostgreSQL.4\include --extra-lib-dirs=C:\PostgreSQL.4\lib
(或任何路径)之类的内容传递给 stack
,以便它知道在哪里可以找到 libpq
。这也可以在 stack.yaml
中配置,如 https://docs.haskellstack.org/en/latest/yaml_configuration/#extra-include-dirsextra-lib-dirs.
中所述
我已经建立了一个项目,它使用 Servant 和 Persistent,使用 PostgreSQL 支持。一切正常,当我 运行 stack ghci
时,包括迁移,但是当我 运行 stack build
时,我收到以下错误:
Linking .stack-work\distcc6475\build\ServantAuthTraining-exe\ServantAuthTraining-exe.exe ...
C://Users//Chris//AppData//Local//Programs//stack//x86_64-windows//ghc-8.8.3//mingw//bin/ld.exe: cannot find -llibpq
collect2.exe: error: ld returned 1 exit status
`gcc.exe' failed in phase `Linker'. (Exit code: 1)
-- While building package ServantAuthTraining-0.1.0.0 using:
C:\sr\setup-exe-cache\x86_64-windows\Cabal-simple_Z6RU0evB_3.0.1.0_ghc-8.8.3.exe --builddir=.stack-work\distcc6475 build lib:ServantAuthTraining exe:ServantAuthTraining-exe --ghc-options " -fdiagnostics-color=always"
Process exited with code: ExitFailure 1
我在 windows,对所有提到的技术人员来说都是新手。
我可以通过 pgAdmin 连接到数据库。
您可能需要将 --extra-include-dirs=C:\PostgreSQL.4\include --extra-lib-dirs=C:\PostgreSQL.4\lib
(或任何路径)之类的内容传递给 stack
,以便它知道在哪里可以找到 libpq
。这也可以在 stack.yaml
中配置,如 https://docs.haskellstack.org/en/latest/yaml_configuration/#extra-include-dirsextra-lib-dirs.