2013-06-04 5 views
5

क्या मॉड्यूल की अधिकतम संख्या है जिसे कैबल/जीएचसी के माध्यम से संकलित किया जा सकता है?क्या मॉड्यूल की अधिकतम संख्या है जिसे कैबल के माध्यम से संकलित किया जा सकता है?

मेरे पास एक बड़ी परियोजना है (कई ऑटो जेनरेट मॉड्यूल) जो कैबल का उपयोग करके संकलित नहीं करते हैं, लेकिन कोई त्रुटि संदेश दिखाई नहीं देता है। Cabal बस चुपचाप exit code 127 के साथ निकलता है (मैक ओएस एक्स, 10.6 और 10.8 में होता है, केवल इन 2 प्लेटफार्मों का परीक्षण किया जाता है; जीएचसी 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 की संख्या है - मेरा मानना ​​है कि एक अधिकतम लगाया लंबाई है ऑपरेटिंग सिस्टम द्वारा ... क्या इस सीमा को रोकने के लिए कोई रास्ता है?

+2

क्या होता है यदि आप उच्च वर्बोसिटी स्तर (जैसे '-v3') के साथ' कैबल 'चलाते हैं तो क्या होता है? –

+0

मुझे नहीं लगता कि कोई सीमा है। इसके अलावा बस संदर्भ और तुलना के लिए आप कितनी बड़ी परियोजना करते हैं? – Laar

+0

~ 6800 मॉड्यूल, लेकिन यह पहले से ही 2500 के साथ विफल रहता है। यह जावा एसई 6 मानक पुस्तकालय के लिए बाध्यकारी है जिस पर मैं काम कर रहा हूं। इसमें 3400 कक्षाएं हैं और प्रत्येक कक्षा के परिणाम दो मॉड्यूल में हैं। – scravy

उत्तर

2

हां - ऑपरेटिंग सिस्टम कमांड लाइन की लंबाई पर एक सीमा रखता है, जिसका उपयोग अंतिम लिंकिंग चरण के लिए आंतरिक रूप से किया जाता है।

मुझे यकीन नहीं है कि कैबल के खिलाफ बग की रिपोर्ट करने और शायद इसे स्वयं ठीक करने का प्रयास करने के अलावा, यहां क्या सुझाव देना है। यदि आप उस मार्ग पर जाते हैं तो कैबल का कोड बहुत पठनीय है। :)

+0

क्या आप जानते हैं कि मैक ओएस एक्स 10.8/डेबियन 7 के लिए ये सीमाएं कितनी हैं? – scravy

संबंधित मुद्दे

 संबंधित मुद्दे