2015-06-08 38 views
2

我想升级惊天动地Linux上:无法升级的阴谋本身

$ cabal --version 
cabal-install version 1.16.0.2 
using version 1.16.0 of the Cabal library 

我也得到很多的错误:

$ cabal install cabal cabal-install 
............................. 

checking for sendfile in sys/socket.h... no 
checking for gethostent... yes 
checking for accept4... yes 
configure: creating ./config.status 
config.status: creating network.buildinfo 
config.status: creating include/HsNetworkConfig.h 
configure: WARNING: unrecognized options: --with-compiler, --with-gcc 
Building network-2.6.2.0... 
Preprocessing library network-2.6.2.0... 
ghc: ghc no longer supports single-file style package databases (dist/package.conf.inplace) use 'ghc-pkg init' to create the database with the correct format. 
Failed to install network-2.6.2.0 
Configuring old-locale-1.0.0.7... 
Building old-locale-1.0.0.7... 
Preprocessing library old-locale-1.0.0.7... 
ghc: ghc no longer supports single-file style package databases (dist/package.conf.inplace) use 'ghc-pkg init' to create the database with the correct format. 
Failed to install old-locale-1.0.0.7 
Configuring random-1.1... 
Building random-1.1... 
Preprocessing library random-1.1... 
ghc: ghc no longer supports single-file style package databases (dist/package.conf.inplace) use 'ghc-pkg init' to create the database with the correct format. 
Failed to install random-1.1 
Configuring stm-2.4.4... 
Building stm-2.4.4... 
Preprocessing library stm-2.4.4... 
ghc: ghc no longer supports single-file style package databases (dist/package.conf.inplace) use 'ghc-pkg init' to create the database with the correct format. 
Failed to install stm-2.4.4 
Configuring text-1.2.1.1... 
Building text-1.2.1.1... 
Preprocessing library text-1.2.1.1... 
ghc: ghc no longer supports single-file style package databases (dist/package.conf.inplace) use 'ghc-pkg init' to create the database with the correct format. 
Failed to install text-1.2.1.1 
Configuring zlib-0.5.4.2... 
Building zlib-0.5.4.2... 
Preprocessing library zlib-0.5.4.2... 
ghc: ghc no longer supports single-file style package databases (dist/package.conf.inplace) use 'ghc-pkg init' to create the database with the correct format. 
Failed to install zlib-0.5.4.2 
cabal: Error: some packages failed to install: 
HTTP-4000.2.19 depends on text-1.2.1.1 which failed to install. 
cabal-install-1.22.4.0 depends on zlib-0.5.4.2 which failed to install. 
mtl-2.2.1 failed during the building phase. The exception was: 
ExitFailure 1 
network-2.6.2.0 failed during the building phase. The exception was: 
ExitFailure 1 
network-uri-2.6.0.3 depends on text-1.2.1.1 which failed to install. 
old-locale-1.0.0.7 failed during the building phase. The exception was: 
ExitFailure 1 
old-time-1.1.0.3 depends on old-locale-1.0.0.7 which failed to install. 
parsec-3.1.9 depends on text-1.2.1.1 which failed to install. 
random-1.1 failed during the building phase. The exception was: 
ExitFailure 1 
stm-2.4.4 failed during the building phase. The exception was: 
ExitFailure 1 
text-1.2.1.1 failed during the building phase. The exception was: 
ExitFailure 1 
zlib-0.5.4.2 failed during the building phase. The exception was: 
ExitFailure 1 
+0

您是否更新GHC? –

回答

1

看上去最有可能的情况是,你已经升级GHC和GHC 7.10需要Cabal 1.22,否则会出现错误 ghc: ghc no longer supports single-file style package databases (dist/package.conf.inplace) use 'ghc-pkg init' to create the database with the correct format.。既然你是在Ubuntu,你可以从the PPA安装cabal-install

sudo apt-add-repository ppa:hvr/ghc 
sudo apt-get update && sudo apt-get install cabal-install-1.22 

由于PPA安装位置是不是在PATH您可以添加/opt/cabal/1.22/bin到PATH,或随意地运行/opt/cabal/1.22/bin/cabal install cabal如果你喜欢有所有的Haskell二进制文件位于一个位置,后来卸载cabal-installapt-get

否则在haskell.org有可用的二进制文件。

+0

另一种可能是你有一个本地安装的cabal版本太旧了。根据需要尝试输入cabal和rm。 – Joe