2013-06-04 9 views
5

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

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

EDIT cabal build -v3出力:今、私は出力、私はそれが多分GHCに渡されているコマンドライン引数の数であると考えていることを確認することを

>>> 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 

- 私が課せられた最大の長さがあると信じていますオペレーティングシステムによって...この制限を回避する方法はありますか?

+2

より高いレベルの冗長レベル( '-v3'など)で' cabal'を実行するとどうなりますか? –

+0

私には限界があるとは思わない。さらに、参照と比較のためにプロジェクトの大きさはどれくらいですか? – Laar

+0

〜6800モジュールですが、すでに2500で失敗しています。これは私が取り組んでいるJava SE 6標準ライブラリへのバインディングです。それは3400のクラスを含み、各クラスは2つのモジュールをもたらす。 – scravy

答えて

2

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

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

+0

Mac OS X 10.8/Debian 7の制限値はどれくらいですか? – scravy

関連する問題