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

カバールを介して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

プルしている他の依存関係の 1 つが古いバージョンのテキストに依存している可能性が高いため、古いバージョンが優先されます。ただし、カバールを使用していないように見えるため、断言することはできません。

簡単な応急処置は、プロファイリングを使用してローカルに text-0.10.0.0 を再インストールすることです。

cabal install --reinstall text-0.10.0.0

(.cabal 構成を正しくフロッブしたと仮定します。そうでない場合は、適切なフラグを追加してください。)

于 2010-12-31T00:18:38.113 に答える