में लिंकर त्रुटियों के विफल रहता है मैं एक खुला स्रोत ढांचे निरंतर एकीकरण के लिए CircleCI का उपयोग करता है बनाए रखें। मैंने हाल ही में एक दीवार मारा है जहां परियोजना ने अचानक अजीब परिस्थितियों में निर्माण करने से इनकार कर दिया।बिल्ड क्योंकि "कई परिभाषा" देशी निर्भरता
Build 27 पिछले एक है कि सफल रहा था। उसके बाद, मैंने निर्भरताओं में कुछ मामूली परिवर्तन किए और ध्यान दिया कि निर्माण विफल रहता है। मैंने सफलता के बिना इसे ठीक करने का प्रयास किया है, इसलिए मैं वापस काम कर रहे कॉन्फ़िगरेशन and it still failed पर वापस लौटा।
विफलता का कारण दो निर्भरताएं हैं, दोनों देशी सी पुस्तकालयों के लिए बाध्यकारी हैं: ओपनजीएल (OpenGLRaw
) और जीएलएफडब्ल्यू (bindings-glfw
)। वे लिंक चरण में कई पंक्तियों के साथ त्रुटि करते हैं:
/tmp/ghc18975_0/ghc18975_6.o:(.data+0x0): multiple definition of `__stginit_bindizu0Qm7f8FzzUN32WFlos7AKUm_BindingsziGLFW'
/tmp/ghc18975_0/ghc18975_6.o:(.data+0x0): first defined here
मैं पूरी तरह से स्टंप हो गया हूं कि ऐसा क्यों हो सकता है। उन पुस्तकालयों की ठीक उसी संस्करणों जब मूल निर्माण पारित कर वापस बनाया गया था, और सीआई पर होने से वह फिर से कंटेनर हर बार (मैं स्पष्ट रूप से कैश की सफाई की कोशिश की है) का उपयोग करता है। निर्माण दोनों apt-get update
और cabal update
शामिल है, हालांकि, तो संभावना है कि कुछ बाहरी संसाधन बदल रहा था।
क्या कभी किसी ने इस तरह के या इसी तरह की समस्या का सामना किया है, यह बेहद निदान और इस मुद्दे को दूर करने में मदद कर सकता है। इस विशिष्ट multiple definition
उस पैमाने की समस्या के लिए Google खोज कुछ भी नहीं पैदा करती है।
मैं कबाल संस्करण को अद्यतन करने के लिए (के बाद से इंटरनेट पर कुछ संकेत यह की दिशा में रखे) कोशिश की, लेकिन साथ:
cabal-install version 1.22.6.0
using version 1.22.4.0 of the Cabal library
समस्या बनी रहती है।
एक महत्वपूर्ण बात जो मैं उल्लेख करना भूल गया था वह यह है कि यह कुछ सरल पैकेज मिश्रण की तरह सख्ती से नहीं दिखता है। मुझे लगता है कि बॉक्स के लिए SSH पर जुड़ा हुआ है, कोई खाली फोल्डर और एकसैंडबॉक्स वहाँ बनाया है, और यहां तक कि साधारण cabal install OpenGLRaw
एक ही समस्या के साथ विफल (इसलिए यह है कि जो अपने आप में एक ही मॉड्यूल के दो संस्करणों में खींच होता है कि उन लोगों के संघर्ष का कारण सकता है संभावना नहीं है)।
I've also extracted a verbose cabal installation log।
क्या एसएसएच ने फिर से ओपनजीएलआरओ के कच्चे स्रोतों को क्लोन किया, वही। 7.6.3 की कोशिश की, अभी भी वही।
मुझे एक समान समस्या है (CircleCI के साथ भी), लेकिन 'direct-sqlite-2.3.16' के साथ। – jpvillaisaza
कोई भाग्य? ऐसा लगता है जैसे 'hslua' के लिए होता है। Https://github.com/commercialhaskell/stack/issues/1624 और https://github.com/osa1/hslua/issues/40 देखें। – jpvillaisaza
@jpvillaisaza मैं जहां भी कर सकता हूं वहां बढ़ गया है; शायद हास्केल reddit को छोड़कर। यहां उछाल डालने का समय और सर्वश्रेष्ठ के लिए आशा है। –