5

Cabal / GHC 経由でコンパイルできるモジュールの最大数はありますか?

cabal を使用してコンパイルしないかなり大きなプロジェクト (多数の自動生成モジュール) がありますが、エラー メッセージは表示されません。Cabal は、黙って終了しますexit code 127(Mac OS X、10.6 と 10.8 で発生、これら 2 つのプラットフォームのみがテスト済み; GHC 7.4.2)。

の編集出力cabal build -v3:

>>> cabal build -v3
Using internal setup method with build-type Simple and args:
["build","--verbose=3"]
creating dist/build
creating dist/build/autogen
Building java-bindings-1.0...
Preprocessing library java-bindings-1.0...
Building library...
creating dist/build
("/usr/bin/ghc",["--make","-package-name","java-bindings-1.0","-v","-hide-all-packages","-fbuilding-cabal-package","-i","-idist/build","-i.","-idist/build/autogen","-Idist/build/autogen","-Idist/build","-optP-include","-optPdist/build/autogen/cabal_macros.h","-odir","dist/build","-hidir","dist/build","-stubdir","dist/build","-package-id","base-4.5.1.0-81d626fb996bc7e140a3fd4481b338cd","-package-id","java-bridge-0.20130602-5cb59a7e71733b25cf4b8a8ae649598b","-O","-XHaskell98","Java.Applet", (references to the other modules)
/usr/bin/ghc returned ExitFailure 127

出力が表示されたので、おそらく ghc に渡されるコマンド ライン引数の数だと思います - オペレーティング システムによって課される最大長があると思います... この制限を回避する方法はありますか?

4

1 に答える 1

2

はい - オペレーティング システムはコマンド ラインの長さに制限を設けており、最終的なリンク ステップで内部的に使用されます。

Cabal に対してバグを報告し、おそらく自分で修正しようとする以外に、ここで何を提案すればよいかわかりません。あなたがその道を行くなら、Cabalのコードはかなり読みやすいです。:)

于 2013-06-20T03:38:59.963 に答える