2014-09-26 82 views
1

环境:

ubuntu14.04安装耶索德与stackage失败

哈斯克尔平台2014 2.0.0(GHC 7.8.3,小集团13年1月18日)

stackage:Stackage建立GHC 7.8 +哈斯克尔平台,2014年9月24日,独家

根据http://www.yesodweb.com/page/quickstart,我跑:

[email protected]:~$ cabal install alex happy yesod-bin 
Resolving dependencies... 
Configuring ansi-terminal-0.6.1.1... 
Configuring alex-3.1.3... 
Downloading unix-time-0.3.4... 
Failed to install ansi-terminal-0.6.1.1 
Last 10 lines of the build log (/home/dsu/.cabal/logs/ansi-terminal-0.6.1.1.log): 
Configuring asn1-types-0.2.3... 
Configuring auto-update-0.1.1.3... 
Failed to install alex-3.1.3 
Last 10 lines of the build log (/home/dsu/.cabal/logs/alex-3.1.3.log): 
Failed to install asn1-types-0.2.3 
Configuring base-unicode-symbols-0.2.2.4... 
Last 10 lines of the build log (/home/dsu/.cabal/logs/asn1-types-0.2.3.log): 
Failed to install auto-update-0.1.1.3 
Last 10 lines of the build log (/home/dsu/.cabal/logs/auto-update-0.1.1.3.log): 
Configuring base64-bytestring-1.0.0.1... 
Configuring blaze-builder-0.3.3.4... 
Failed to install base-unicode-symbols-0.2.2.4 
Last 10 lines of the build log (/home/dsu/.cabal/logs/base-unicode-symbols-0.2.2.4.log): 
Failed to install unix-time-0.3.4 
Last 10 lines of the build log (/home/dsu/.cabal/logs/unix-time-0.3.4.log): 
cabal: /home/dsu/.cabal/logs/unix-time-0.3.4.log: does not exist 

它只是说“无法安装”,并没有提供任何提示。为什么使用堆栈仍然有这些问题?

+0

除了jamshidh说的我通常甚至在沙箱中做了snap和yesod--你可以在以后使用cabal sandbox init --sandobx = [你的路径在这里]把你的项目沙箱指向那里并且有一个简单的符号链接到可执行文件将做 - 这样你可以保持你的环境。相当干净和'--force-reinstalls'通常没有问题 – Carsten 2014-09-26 06:39:22

+1

和顺便说一句,这看起来像** hackage down **问题(其中它需要很长的时间,无法下载软件包) - 在这种情况下,只需执行'cabal instal .. 。“一遍又一遍,直到你有所有的包(我注意到你使用堆栈,但掏真正502ing我ATM) – Carsten 2014-09-26 06:40:17

+0

@CarstenKönig你给我一些提示,最后我切换到包容性堆栈,一切都OK! – doofin 2014-09-26 12:20:12

回答

1

这个通用的阴谋调试建议平时发现问题....

更新小集团数据库,再试

cabal update 
cabal install .... 

尝试单独安装有问题的依赖... 。看上面,看起来我看到几行以“无法安装....”开始,单独测试。

cabal install base-unicode-symbols 

必要时递归。


下载失败的包,

cabal unpack base-unicode-symbols 
cd base-unicode-symbols-* 

配置,看看它的依赖都装

cabal configure 

如果没有,递归进入陷入困境的包。


尝试建立包

cabal build 

如果它不工作,你现在有有用的错误信息。如果你能解决这个问题,那么很好,否则在这里重新发布信息。


安装

cabal install 

在更激烈的情况下,你可能想要删除(实际上,只要将它如果你想回去)你的〜/ .cabal/*内容,或者您的〜/ .ghc/*内容,但将其作为最后的手段,因为您必须重新安装所有cabal软件包。另外,您可能希望保留〜/ .cabal/bin/*的内容。

1

我刚刚更新Stackage Server使用FP完整的Hackage镜(这是亚马逊S3供电),而不是Hackage本身。这应该使它对Hackage宕机时间完全有弹性。感谢提出这个问题,我们绝对希望Stackage比Hackage拥有更好的正常运行时间保证。

0

我遇到了同样的问题。我通过暂时删除我的HTTP_PROXY环境变量解决了问题,因为没有cabal尝试通过无法访问的服务器进行连接。