1

我正在构建一个链接到文本库的程序。当我在没有分析的情况下构建它时,一切正常:

ghc -O2 buildtrie.hs -package text -package hamt -o buildtrie -auto-all -package text -package hamt -fforce-recomp
<No output>

当我使用分析构建它时,我收到以下错误:

ghc -O2 buildtrie.hs -package text -package hamt -o buildtrie -auto-all -package text -package hamt -fforce-recomp -prof
ld: library not found for -lHStext-0.10.0.0_p
collect2: ld returned 1 exit status

我通过 cabal 安装了 text-0.11.0.1 的分析版本,但似乎没有找到它。我猜 text-0.10.0.0 是随 Haskell 平台安装的。Aghc-pkg list text给了我以下信息:

/usr/local/Cellar/ghc/6.12.3/lib/ghc/package.conf.d
/Users/jason/.ghc/i386-darwin-6.12.3/package.conf.d
   text-0.10.0.0
   text-0.11.0.1

如何使用 text-0.11.0.1 的分析版本编译此程序?

4

1 回答 1

3

可能发生的情况是,您引入的其他依赖项之一依赖于旧版本的文本,这就是首选它的原因。不过,很难确定,因为您似乎没有使用 Cabal。

一个简单的权宜之计是使用分析在本地重新安装 text-0.10.0.0。

cabal install --reinstall text-0.10.0.0

(假设你已经正确地修改了你的 .cabal 配置;否则,添加适当的标志。)

于 2010-12-31T00:18:38.113 回答