我下载了 cabal-install-1.20.0.3.tar.gz 文件并解压,尝试运行时出现以下错误。我的目标是更新 pandoc。现在我有 pandoc 1.9,但我需要 1.12 版本。要更新 pandoc,我尝试更新 cabal 库。但没有成功
root@gains [/home/quotequadsco/pkp/cabal-install-1.20.0.3]# sh bootstrap.sh
Using gcc for C compiler. If this is not what you want, set CC.
Using /usr/libexec/gcc/x86_64-redhat-linux/4.4.7/collect2 instead.
Checking installed packages for ghc-7.0.4...
deepseq is already installed and the version is ok.
time is already installed and the version is ok.
Cabal-1.20.0.0 will be downloaded and installed.
transformers is already installed and the version is ok.
mtl is already installed and the version is ok.
text is already installed and the version is ok.
parsec is already installed and the version is ok.
network is already installed and the version is ok.
HTTP-4000.2.12 will be downloaded and installed.
zlib is already installed and the version is ok.
random is already installed and the version is ok.
stm is already installed and the version is ok.
Downloading Cabal-1.20.0.0...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 318k 0 318k 0 0 688k 0 --:--:-- --:--:-- --:--:-- 1439k
[ 1 of 76] Compiling Distribution.PackageDescription.Utils ( Distribution/PackageDescription/Utils.hs, Distribution/PackageDescription/Utils.o )
[ 2 of 76] Compiling Distribution.Simple.CCompiler ( Distribution/Simple/CCompiler.hs, Distribution/Simple/CCompiler.o )
[ 3 of 76] Compiling Distribution.Compat.CreatePipe ( Distribution/Compat/CreatePipe.hs, Distribution/Compat/CreatePipe.o )
[ 4 of 76] Compiling Distribution.Compat.Environment ( Distribution/Compat/Environment.hs, Distribution/Compat/Environment.o )
[ 5 of 76] Compiling Distribution.Compat.Exception ( Distribution/Compat/Exception.hs, Distribution/Compat/Exception.o )
[ 6 of 76] Compiling Distribution.Compat.TempFile ( Distribution/Compat/TempFile.hs, Distribution/Compat/TempFile.o )
[ 7 of 76] Compiling Distribution.Compat.CopyFile ( Distribution/Compat/CopyFile.hs, Distribution/Compat/CopyFile.o )
[ 8 of 76] Compiling Distribution.GetOpt ( Distribution/GetOpt.hs, Distribution/GetOpt.o )
[ 9 of 76] Compiling Distribution.Compat.ReadP ( Distribution/Compat/ReadP.hs, Distribution/Compat/ReadP.o )
[10 of 76] Compiling Distribution.Text ( Distribution/Text.hs, Distribution/Text.o )
[11 of 76] Compiling Distribution.Version ( Distribution/Version.hs, Distribution/Version.o )
[12 of 76] Compiling Language.Haskell.Extension ( Language/Haskell/Extension.hs, Language/Haskell/Extension.o )
[13 of 76] Compiling Distribution.TestSuite ( Distribution/TestSuite.hs, Distribution/TestSuite.o )
[14 of 76] Compiling Distribution.System ( Distribution/System.hs, Distribution/System.o )
[15 of 76] Compiling Distribution.Simple.PreProcess.Unlit ( Distribution/Simple/PreProcess/Unlit.hs, Distribution/Simple/PreProcess/Unlit.o )
[16 of 76] Compiling Distribution.ReadE ( Distribution/ReadE.hs, Distribution/ReadE.o )
[17 of 76] Compiling Distribution.Verbosity ( Distribution/Verbosity.hs, Distribution/Verbosity.o )
[18 of 76] Compiling Distribution.Package ( Distribution/Package.hs, Distribution/Package.o )
Distribution/Package.hs:91:59:
No instance for (NFData Version)
arising from a use of `rnf'
Possible fix: add an instance declaration for (NFData Version)
In the second argument of `seq', namely `rnf version'
In the expression: rnf name `seq` rnf version
In an equation for `rnf':
rnf (PackageIdentifier name version) = rnf name `seq` rnf version
Error during cabal-install bootstrap:
Compiling the Setup script failed.
实际上我需要更新 cabal 但每次尝试都失败。
我尝试了 cabal install cabal-install 并收到以下错误
cabal: cannot configure unix-2.7.0.1. It requires base >=4.5 && <4.8
For the dependency on base >=4.5 && <4.8 there are these packages:
base-4.5.0.0, base-4.5.1.0, base-4.6.0.0, base-4.6.0.1, base-4.7.0.0 and
base-4.7.0.1. However none of them are available.
附加说明:Centos 6.6
caball-install 版本 0.10.2 使用 Cabal 库
GHC 版本 7.0.4
haskell-platform-2011.4.0.0-6.el6.x86_64的版本 1.10.2.0
如何解决,请帮帮我!
答案1
经过长时间的谷歌搜索,我终于找到了解决方案。这个问题是由于 ghc 版本太旧造成的。我从以下网址下载了 ghc 7.8.3 源代码包:这里并安装它。
然后 ghc 7.8.3 有旧版本的 cabal,因此必须使用 从 ghc 7.8.3 中取消注册它
ghc unregister Cabal
。
然后从 cabal-install-1.20 文件夹运行 bootstrap.sh 并成功获得 cabal-install 1.20 并运行, cabal update pandoc
然后可以安装 pandoc 1.13 版本