1

サンドボックスなしで Cabal プロジェクトをビルドすると、Cabal は Haskell Platform インストールの既存のライブラリを使用します。ただし、Cabal サンドボックス内で同じことを行おうとすると、Cabal は強制的にすべての依存関係をサンドボックスに再構築します。

ビルド時間とディスク容量を節約するために、Cabal に既存の Haskell Platform ライブラリを再構築する代わりに使用するように指示できるとよいでしょう。これは可能ですか?

例 ( gist 内のファイル):

executable blog
  hs-source-dirs:    .
  main-is:           Test.hs
  build-depends:     base >= 4.5 && < 5
                   , text

このファイルcabal buildを含むディレクトリにいる場合、私のモジュールは の Haskell Platform バージョンに対してビルドされます。.cabalTesttext

ただし、サンドボックスで同じことを行うと、次のようになります。

cabal clean # (or alternatively clone an empty gist)
cabal sandbox init
cabal build

私はこれを得る:

$ cabal build
Package has never been configured. Configuring with default flags. If this
fails, please run configure manually.
Resolving dependencies...
Configuring install-test-0.1...
cabal: At least the following dependencies are missing:
text -any

ここで に進むとcabal install、最新のtextライブラリがサンドボックスの下にゼロから構築されます。

4

1 に答える 1