我有一个项目,这是一个沙盒里面,我在小集团文件中引入一个测试套件,它build-depends上hunit ==1.2.*.问题是当我尝试配置时:
$ cabal configure --enable-tests
解决依赖关系......
配置MyProject-0.1.0.0 ...
cabal:至少缺少以下依赖项:
hunit == 1.2.*
还有一些尝试让它出现:
$ cabal install --dependencies-only
解析依赖项...
已安装所有请求的软件包:
如果要重新安装,请使用--reinstall.
&
$ cabal install hunit
解析依赖项...
已经安装了所有请求的软件包:
HUnit-1.2.5.2
如果要重新安装,请使用--reinstall.
&
$ cabal install --enable-tests
解决依赖关系...
cabal:无法解析依赖关系:
尝试:MyProject-0.1.0.0(用户目标)
拒绝:MyProject-0.1.0.0:!test(全局约束需要相反的标记选择)
尝试:MyProject-0.1.0.0:*测试
下一个目标:hunit(MyProject-0.1.0.0:*test的依赖)
失败(未知包:hunit)
完全搜索依赖树.
--reinstall什么也没做.
我甚至玩过--user和--global旗帜,即使我正在使用cabal而不是runhaskell,它也无济于事.
我也尝试过delete重新init安装沙盒.
我也试过delete沙箱,它仍然给了我同样的错误.
ghc-pkg check发现没有错.
会是什么呢?
顺便说一下,我的一部分人怀疑cabal忽略了我的项目是在沙盒中,因为它没有费心去安装已经在我的机器上的一些软件包; 它在我的Windows上运行(这是在Ubuntu上).可以检查吗?
Ubuntu 14.04.1 LTS
GHC版本:7.6.3
cabal-install版本:1.20.0.3
Cabal库版本:1.20.0.2
现在尝试使用cabal-install 1.16.0.2但没有成功.
Rud*_*ela 10
软件包名称在Cabal/Hackage中区分大小写,正确的软件包名称为HUnit.更改cabal文件中包含以下内容的行:
hunit ==1.2.*
Run Code Online (Sandbox Code Playgroud)
至
HUnit ==1.2.*
Run Code Online (Sandbox Code Playgroud)