对Haskell生态系统来说非常新。我正在尝试安装 hunit,但当我运行cabal install hunit
时,我收到以下消息:
Warning: The install command is a part of the legacy v1 style of cabal usage.
Please switch to using either the new project style and the new-install
command or the legacy v1-install alias as new-style projects will become the
default in the next version of cabal-install. Please file a bug if you cannot
replicate a working v1- use case with the new-style commands.
For more information, see: https://wiki.haskell.org/Cabal/NewBuild
cabal: There is no package named 'hunit'. However, the following package name
exists: 'HUnit'.
这条消息告诉你两件不同的事情。 "安装"是旧命令,"hunit"不存在。
您的简短解决方案是cabal v2-install --lib HUnit
。 对于旧行为,请考虑cabal v1-install HUnit
。
安装是遗产:大段落
陰謀集團過去曾經把所有東西都安裝到一個商店中,無論是用戶還是系統範圍,如果任何包在包版本上有分歧,那麼祝你好運。 v2 命令移动到"nix 样式构建",其中不同的版本可以在存储中共存,项目可以通过共享通用包的构建继续受益。 v2 命令实际上是以v2-
为前缀的命令,例如v2-install
、v2-build
和v2-configure
。
hunit不存在
黑客区分大小写。 该工具已经通知您,您可能打算安装HUnit
而不是hunit
。
尾声:使用--lib
除非通过--lib
显式安装,否则v2-install
不会公开构建的库。 这减少了需要重新培训的一些昂贵的程序员的命名空间混乱。 要将 HUnit 用作库并在 repl 中使用它,请添加--lib
,如开头所示。