Haskell 同时使用stack、ghc mod和NixOS
我在让所有这些工具协同工作时遇到了一些困难,我很想知道是否有人成功地做到了 我的主要问题如下:我有一些外部依赖项,它们在我的Haskell 同时使用stack、ghc mod和NixOS,haskell,haskell-stack,nix,ghc-mod,Haskell,Haskell Stack,Nix,Ghc Mod,我在让所有这些工具协同工作时遇到了一些困难,我很想知道是否有人成功地做到了 我的主要问题如下:我有一些外部依赖项,它们在我的堆栈中。yaml如下所示: nix: enable: true packages: [curl, postgresql94, zlib] 这显然是由nix系统提供的。当我在当前的Main.hs上运行ghc mod type Main.hs 39 19时,我得到以下信息: EXCEPTION: types: <command line&g
堆栈中。yaml
如下所示:
nix:
enable: true
packages: [curl, postgresql94, zlib]
这显然是由nix系统提供的。当我在当前的Main.hs上运行ghc mod type Main.hs 39 19
时,我得到以下信息:
EXCEPTION: types:
<command line>: can't load .so/.DLL for: /home/user/.stack/snapshots/x86_64-linux-nix/lts-7.15/8.0.1/lib/x86_64-linux-ghc-8.0.1/postgresql-libpq-0.9.2.0-IWEdPrPraPeE94ud73Ope3/libHSpostgresql-libpq-0.9.2.0-IWEdPrPraPeE94ud73Ope3-ghc8.0.1.so (libpq.so.5: cannot open shared object file: No such file or directory)
异常:类型:
:无法加载/home/user/.stack/snapshots/x86_64-linux-nix/lts-7.15/8.0.1/lib/x86_64-linux-ghc-8.0.1/postgresql-libpq-0.9.2.0-IWEdPrPraPeE94ud73Ope3/libHSpostgresql-libpq-0.9.2.0-iwedprapee94ud73ope3-ghc8.0.1.1.so(libpq.so.5:无法打开共享对象文件:没有这样的文件或目录)
因此,它似乎很难加载这些外部依赖项
有什么想法可以继续吗?您可以试试,这是专门为使用堆栈而设计的。更困难的方法是为Nix打包ghc mod
。@Mikkel:谢谢,但我是一个vim人:)已经有了一个用于ghc mod的Nix包,我不认为这是问题所在,或者可能我误解了你。我认为堆栈的Nix集成只在它内部使用的Nix shell中安装依赖项。您的ghc mod是否可能在这个shell之外运行,因此丢失了它需要的一些LD\u LIBRARY\u路径
条目?