【发布时间】:2011-07-03 15:30:10
【问题描述】:
如何为所有本地安装的 cabal 软件包生成和安装文档?我在 ~/.cabal/config 中打开了文档标志,这意味着所有新安装的软件包也会生成文档。但是如何为所有已经安装的包生成文档呢?
有没有办法自动cabal install --reinstall所有已经安装的包?更重要的是,这是个好主意吗?
【问题讨论】:
标签: haskell documentation cabal
如何为所有本地安装的 cabal 软件包生成和安装文档?我在 ~/.cabal/config 中打开了文档标志,这意味着所有新安装的软件包也会生成文档。但是如何为所有已经安装的包生成文档呢?
有没有办法自动cabal install --reinstall所有已经安装的包?更重要的是,这是个好主意吗?
【问题讨论】:
标签: haskell documentation cabal
如果您有最新版本的 cabal-install(我认为 >= 0.10),您可以尝试这样做
$ cabal install --reinstall --upgrade-dependencies world
不幸的是,它在我的情况下不起作用:
$ cabal install --dry-run --reinstall world
Resolving dependencies...
cabal: cannot configure Agda-2.2.10. It requires haskell-src-exts >=1.9.6 &&
<1.10
For the dependency on haskell-src-exts >=1.9.6 && <1.10 there are these
packages: haskell-src-exts-1.9.6. However none of them are available.
haskell-src-exts-1.9.6 was excluded because haskell-src-exts-1.11.1 was
selected instead
haskell-src-exts-1.9.6 was excluded because hlint-1.8.12 requires
haskell-src-exts ==1.11.*
如果遇到这样的错误,可以尝试手动编辑~/.cabal/world 文件。
【讨论】:
请注意cabal install --only-dep --reinstall does not work。
如果你使用的是沙盒,你可以这样做
cabal sandbox delete
cabal sandbox init
cabal install -j --only-dep --enable-documentation
-j 选项允许它并行构建。
【讨论】:
你可以在 bash 中尝试这样的事情。
for pkg in `ghc-pkg list --simple`
do
cabal install $pkg --reinstall
done
但我真的不知道,这是否是个好主意。
【讨论】:
ghc、base等。不要尝试;)
ghc-pkg --simple --user 仅列出用户安装的软件包。