编译器每次都在抱怨并行Haskell的不同示例应用程序;带有此消息:
Could not find module `Control.Parallel.Strategies'
ghc编译器命令:
ghc -threaded -i/sudo/dir/par-modules/3 -cpp -DEVAL_STRATEGIES -eventlog --make parFib.hs
与简单相同
ghc -O2 --make -threaded parFib.hs
我俯瞰什么细节?我是否缺少一些PATH变量。
导入看起来可能像这样:
module Main where
import System
# if defined(EVAL_STRATEGIES)
import Control.Parallel
import Control.Parallel.Strategies
#endif
欢呼声
您必须从Hackage安装parallel软件包。在大多数理智的设置中,这应该像键入一样简单
cabal install parallel # note: not sudo cabal install parallel!
在命令提示符下。
就像丹尼尔说的那样,您需要并行包装。但是,如果您希望使用系统的程序包管理器(某些人认为您是should),则可以。
注意,至少在Fedora仓库中,您需要ghc-parallel-devel,而不仅仅是ghc-parallel来构建。
#yum install ghc-parallel-devel
出于可见性原因,我正在添加新的答案(而不是评论)。
[尝试了Daniel的答案后,无论是import Control.Parallel
还是编译器,我仍然都无法执行ghci
。 install命令返回如下警告消息:
➜ ~ cabal install parallel
Resolving dependencies...
Up to date
Warning: You asked to install executables, but there are no executables in
target: parallel. Perhaps you want to use --lib to install libraries instead.
最终解决问题的是:
cabal install --lib parallel