0

有人帮我理解它。Cabal,很棒的应用程序,喜欢它。但是如果 cabal 文件已更改,cabal build 将失败,并显示一条消息说 run cabal configure。不过,它并没有在 cabal install 上抱怨这一点。我不明白为什么 cabal 的程序员不遗余力地检测情况并将消息输出而不是自动运行配置步骤。为什么?

4

2 回答 2

5

我实际上认为这在 cabal-install 0.9.5 和 Cabal 1.10.1.0 中发生了变化:

$ cabal unpack bytestring
cd byteDownloading bytestring-0.9.1.9...
    Unpacking to bytestring-0.9.1.9/

$ cd bytestring-0.9.1.9/

$ runghc Setup.hs configure
Configuring bytestring-0.9.1.9...

$ touch bytestring.cabal 

$ runghc Setup.hs build
./bytestring.cabal has been changed. Re-configuring with most recently used
options. If this fails, please run configure manually.
Configuring bytestring-0.9.1.9...
Preprocessing library bytestring-0.9.1.9...
Building bytestring-0.9.1.9...
[1 of 8] Compiling Data.ByteString.Fusion ( Data/ByteString/Fusion.hs, dist/build/Data/ByteString/Fusion.o )
... etc ...

因此,只需等待下一个 Haskell 平台版本(使用 GHC 7 和新的 Cabal),您就不会再遇到这个烦人的错误了 :-)

于 2011-01-21T08:10:17.963 回答
0

我想这是因为这会导致奇怪的错误。假设您配置了一些参数,例如。您选择了另一个编译器 eith -w。目前,cabal 不知道您为配置提供了哪些参数。我想请求重新配置而不是使用默认参数进行配置实际上更聪明。但是为什么不为此开张票呢?

于 2011-01-21T05:21:00.760 回答