使用cabal更新agda时内存不足,发生错误吗?

问题描述 投票:0回答:1

我正在尝试升级agda,出现内存错误。有什么方法可以解决这个问题?

我尝试过cabal install --ghc-options="+RTS -M600M" --force-reinstalls agda,但遇到一个类似的问题,但这只是产生了堆错误。

wmacmil@w:~$ cabal install --force-reinstalls agda
Resolving dependencies...
Warning: The following packages are likely to be broken by the reinstalls:
Agda-2.6.0.1
Continuing even though the plan contains dangerous reinstalls.
Downloading base-compat-0.10.5...

...

[325 of 369] Compiling Agda.TypeChecking.IApplyConfluence ( src/full/Agda/TypeChecking/IApplyConfluence.hs, dist/build/Agda/TypeChecking/IApplyConfluence.o )
[326 of 369] Compiling Agda.TypeChecking.Rules.LHS.Unify ( src/full/Agda/TypeChecking/Rules/LHS/Unify.hs, dist/build/Agda/TypeChecking/Rules/LHS/Unify.o )
cabal: Leaving directory '/tmp/cabal-tmp-30263/Agda-2.6.1'
cabal: Error: some packages failed to install:
Agda-2.6.1 failed during the building phase. The exception was:
ExitFailure (-9)
This may be due to an out-of-memory condition.
haskell cabal agda cabal-install
1个回答
1
投票

啊,GHC的记忆饥渴是无法饱和的...

我通常为较大的安装量所做的是,几乎不限制GHC的-M(或可能限制为总内存的80%),但通过将编译限制在单个进程中,确保它实际上具有所有可用的每个进程。 。

cabal install --ghc-options =“ + RTS -M7G” -j1 --force-reinstalls agda

很显然,这会使所有过程变慢,但至少通常会成功。

© www.soinside.com 2019 - 2024. All rights reserved.