आपको कैबल कॉन्फ़िगरेशन फ़ाइल में सभी मॉड्यूल सूचीबद्ध करना होगा। आपके मामले में, आप exposed-module:
के बाद मॉड्यूल की सूची डाल दें। मॉड्यूल की सूची लिखने का कोई आसान तरीका नहीं है।
कैबल स्वचालित रूप से उन फ़ाइलों को नहीं ढूंढ सकता जो निष्पादन योग्य या पुस्तकालय का हिस्सा हैं, इसलिए यह कॉन्फ़िगरेशन फ़ाइल में मॉड्यूल की सूची पर निर्भर करता है। जीएचसी के विपरीत, कैबल को स्रोत कोड में आयात विवरणों के आधार पर मॉड्यूल नहीं मिल सकते हैं। यदि आप प्रत्येक मॉड्यूल की सूची नहीं देते हैं, तो आप प्रोजेक्ट बनाने में सक्षम हो सकते हैं (क्योंकि जीएचसी स्रोत फाइलें पा सकता है), लेकिन cabal sdist
जैसे अन्य कमांड सूचीबद्ध स्रोत फ़ाइलों तक नहीं पहुंच पाएंगे।
क्या आप पूछ रहे हैं कि कैबल प्रोजेक्ट में मॉड्यूल को 'कैबल' फ़ाइल में उल्लेख किए बिना कैसे शामिल किया जाए? – Heatsink
@Heatsink, नहीं - यदि आप कैबेल के साथ लाइब्रेरी संकलित कर रहे हैं तो आपको '<...> .cabal' कॉन्फ़िगरेशन फ़ाइल लिखनी होगी। इस फ़ाइल में आप अनुभाग 'एक्सपोज़ड-मॉड्यूल' प्रदान करने के लिए उत्सुक हैं जिसमें आपको ** प्रत्येक ** मॉड्यूल को सूचीबद्ध करना है जिसे आप बेनकाब करना चाहते हैं। मैं ** सभी ** मॉड्यूल का पर्दाफाश करना चाहता हूं। –
यह मेरे प्रश्न का उत्तर नहीं देता है। प्रत्येक मॉड्यूल को '.abal' फ़ाइल में सूचीबद्ध होना चाहिए। आंतरिक मॉड्यूल भी 'अन्य मॉड्यूल' में सूचीबद्ध होना चाहिए। क्या आप सभी मॉड्यूल सूचीबद्ध करने के वैकल्पिक तरीकों के लिए पूछ रहे हैं, या आप इसे सूचीबद्ध किए बिना मॉड्यूल का उपयोग करने के तरीकों के बारे में पूछ रहे हैं? – Heatsink