使用ghc-pkg重新注册现有包

时间:2013-01-15 19:42:46

标签: haskell ghc cabal

我以前安装了cabal install <package>的软件包。我使用ghc-pkg unregister取消注册。但现在我又要回来了。

包二进制文件和源代码仍存储在我的.cabal目录中。我只需要用ghc-pkg再次注册它。但我找不到办法。

我试过了:

  • ghc-pkg register ...:为此,我需要一个包描述文件。但我找不到从.cabal目录中存储的数据中获取一个的方法。
  • cabal install ...:这会从源代码构建软件包,在这台小型计算机上耗费时间。
  • cabal register:当给定存储在.cabal / packages / ...中的.cabal文件要求我运行cabal configure时,似乎与构建过程有关。

有什么想法吗?

1 个答案:

答案 0 :(得分:4)

我认为没有重建就没有任何简单的方法可以做到这一点。如果您想再次使用包,则不应unregister它,因为它会从数据库中删除包信息,而是hide您可以在以后使用expose的包。

您可以做的是保存ghc-pkg describe <pkg name>的输出,然后保存unregister pkg的输出。稍后您可以ghc-pkg register <file where you saved describe output>