2015-12-03 3 views
8

का उपयोग कर ghc लाइब्रेरी को कैसे हटा सकता हूं मैं runhaskell के साथ सरल स्क्रिप्ट बना रहा हूं औरसे FastString का उपयोग करने का प्रयास करता हूं। सीधे शब्दों में:मैं रनहास्केल

import FastString 

main = putStrLn "Hello SO" 

साथ runhaskell Main.hs परिणाम त्रुटि में यह चल रहा है:

Main.hs:1:8: 
    Could not find module ‘FastString’ 
    It is a member of the hidden package ‘ghc-7.10.2’. 
    Use -v to see a list of the files searched for. 

मुझे पता है कि मैं इसे cabal साथ निर्माण और ghc निर्भरता के रूप में निर्दिष्ट कर सकते हैं, लेकिन मैं वास्तव में runhaskell साथ यह करने के लिए की जरूरत है।

मैं runhaskell का उपयोग कर ghc लाइब्रेरी को कैसे देख सकता हूं?

उत्तर

5

टी एल; डॉ:

$ ghc-pkg expose ghc 

खैर, runhaskell मूल रूप से runghc के चारों ओर एक आवरण है, और runghc मूल रूप से ghc है। वे सभी एक ही नियमों का पालन करते हैं: वे केवल आपके कॉन्फ़िगर किए गए डेटाबेस से पैकेजों को प्रदर्शित कर सकते हैं।

ghc-pkg describe {package-name} का उपयोग करके, कोई एक निश्चित पैकेज के बारे में जानकारी प्राप्त कर सकता है। महत्वपूर्ण क्षेत्र यहाँ exposed है:

$ ghc-pkg describe ghc | grep expose 
exposed: False 
exposed-modules: 

आप देख सकते हैं, पैकेज संपर्क में नहीं है (इसलिए यह छिपा हुआ है)। ghc-pkg expose का उपयोग करना, आप इसे उजागर कर सकते हैं:

$ ghc-pkg expose ghc 

ध्यान रखें कि आप अनुमतियों की जरूरत है आप अपने सिस्टम विस्तृत पैकेज डेटाबेस की सेटिंग बदल रहे हैं, तो रखें।