yesod安装失败

时间:2012-10-09 12:48:35

标签: haskell yesod

我通常发现超过一半的大包装的cabal安装失败了,而不是新用户的致命缺陷!

这次我试图安装yesod,任何提示?

> cabal install yesod
  ...
Loading package time-1.2.0.5 ...

GHCi runtime linker: fatal error: I found a duplicate definition for symbol
   _get_current_timezone_seconds
whilst processing object file
   C:\Users\guthrie\AppData\Roaming\cabal\time-1.2.0.5\ghc-7.4.1\HStime-1.2.0.5.o
This could be caused by:
   * Loading two different object files which export the same symbol
   * Specifying the same object file twice on the GHCi command line
   * An incorrect `package.conf' entry, causing some object to be
     loaded twice.
GHCi cannot safely continue in this situation.  Exiting now.  Sorry.

cabal: Error: some packages failed to install:
authenticate-1.3.1.1 depends on http-conduit-1.6.1.1 which failed to install.
http-conduit-1.6.1.1 failed during the building phase. The exception was:
ExitFailure 1
yesod-1.1.1.2 depends on yesod-core-1.1.2.1 which failed to install.
yesod-auth-1.1.1.1 depends on yesod-core-1.1.2.1 which failed to install.
yesod-core-1.1.2.1 failed during the building phase. The exception was:
ExitFailure 1
yesod-form-1.1.3 depends on yesod-core-1.1.2.1 which failed to install.
yesod-json-1.1.0 depends on yesod-core-1.1.2.1 which failed to install.
yesod-persistent-1.1.0 depends on yesod-core-1.1.2.1 which failed to install.

2 个答案:

答案 0 :(得分:2)

yesod使用与Haskell平台不同的alex包版本。除了ghc之外,我总是从我的发行版包管理器安装alex和happy,然后使用cabal。或者,您可以随时使用

cabal update && cabal install alex happy
cabal install yesod-platform

答案 1 :(得分:0)

这很可能是因为尝试同时安装两个版本的时间包。您可以尝试运行cabal install yesod-platform并查看问题是否仍然存在?

正如@Inaimathi所说,这可能是由于cabal的旧版本。也许还可以尝试cabal update && cabal install cabal-install