Haskell堆栈生成重复依赖?

时间:2018-06-12 01:05:02

标签: haskell ghc haskell-stack

所以我正在将我的Haskell项目从LTS 9.21(GHC 8.0.2)更新到LTS 11.12(GHC 8.2.2),并且我现有的一个项目不再正常编译(OS:archlinux)。具体来说,库的测试二进制文件无法编译(测试中的库编译良好)。测试二进制文件似乎找到了两个数据类型声明的实例,这让我觉得可能正在测试的库正在重复?我收到以下错误消息:

• Couldn't match type ‘MyLib-0.2.1.0:MyLib.Foo.BarType’
                 with ‘BarType’
  NB: ‘BarType’
        is defined in ‘MyLib.Foo’ in package ‘MyLib-0.2.1.0’
      ‘MyLib-0.2.1.0:MybLib.Foo.BarType’
        is defined in ‘MyLib.Foo’ in package ‘MyLib-0.2.1.0’
  Expected type: IO (V.Vector BarType)
    Actual type: IO
                   (V.Vector MyLib-0.2.1.0:MyLib.Foo.BarType)

可能进一步支持我的重复依赖理论是在.stack-work目录下面存在两个带有不同哈希后缀的'MyLib'副本

$ ls .stack-work/dist/x86_64-linux-tinfo6/Cabal-2.0.1.0/build
autogen     libHSMyLib-0.2.1.0-GDttEQSehxfEGK2MpHGnkk.a            
libHSMyLib-0.2.1.0-KMd8aF0sABi30EkTXjcRNo-ghc8.2.2.so
MyLib-tests  libHSMyLib-0.2.1.0-GDttEQSfhxfEFK2MwHGnkk-ghc8.2.2.so
MyLib       libHSMyLib-0.2.1.0-KMg8aF0jABi10EkJXjcRNo.a

欢迎任何建议。

0 个答案:

没有答案