2015-07-13 7 views
5

मैंने स्टैक को एक शॉट देने का प्रयास करने का फैसला किया है। मैंने इसे स्थापित किया है और इसे ghc का नवीनतम संस्करण स्थापित करने के लिए उपयोग किया है। मैंने कुछ संकुल को स्थापित करने के लिए स्टैक का उपयोग किया है लेकिन संकुल ghc के लिए दृश्यमान नहीं हैं और जब मैं ghc-pkg के साथ संकुल सूचीबद्ध करता हूं, तो मुझे लगता है कि मैंने जो पैकेज स्टैक के माध्यम से स्थापित किए हैं, वे वहां नहीं हैं। ऐसा क्यों है? क्या मैं ढेर के उद्देश्य को गलत समझ रहा हूं?ghc पैकेज डेटाबेस में संकुल जोड़ने क्यों नहीं है?

उत्तर

7

स्टैक कभी भी वैश्विक पैकेज डेटाबेस को छूता नहीं है। यह बहुस्तरीय डेटाबेस दृष्टिकोण

  1. वैश्विक डेटाबेस का उपयोग करता - अछूता stackage स्नैपशॉट में
  2. संकुल स्नैपशॉट डेटाबेस में स्थापित
  3. अन्य संकुल

इस प्रकार परियोजना प्रति स्थानीय रूप से स्थापित कर रहे हैं के बजाय वैश्विक डेटाबेस प्रदूषण कर रहे हैं , अधिकांश संकुल स्नैपशॉट डेटाबेस में स्थापित होते हैं, इसलिए अधिकांश संकुल साझा किए जा सकते हैं। चूंकि स्टैकेज स्नैपशॉट्स में संकुल संगत होते हैं (यानी हमेशा एक साथ संकलित होते हैं), हम कैबल नरक में नहीं चलते हैं।

आप संकुल डेटाबेस कॉन्फ़िगर किए गए संबंधित आदेश चलाने के लिए stack ghci या stack ghc का उपयोग कर सकते हैं।

stack wiki

में अधिक सटीक स्पष्टीकरण है
संबंधित मुद्दे