2017-11-17 10 views
5

में डीबग प्रतीकों को खोना मैं स्टैक का उपयोग करके स्थिर रूप से जुड़ा हुआ बाइनरी बना रहा हूं और मैं इसे डीबग प्रतीकों को जोड़ने की कोशिश करता हूं (निम्नलिखित: https://downloads.haskell.org/~ghc/master/users-guide/debug-info.html)। हालांकि जीडीबी रिपोर्ट: no debugging symbols foundस्थिर रूप से जुड़े बाइनरी

मुझे क्या याद आ रही है? -g -rtsopts और ld-options लिए: -static

मैं .cabal file में ghc-options में शामिल किया है।

stack install \ 
    --install-ghc \ 
    --split-objs \ 
    --ghc-options="-fPIC -fllvm -pgmlo opt -pgmlc llc" 

GDB के रूप में शुरू हो जाती है इस प्रकार है:: gdb --args nodebug-exe +RTS -V0

GHC 8.2.1

पूरे स्रोत कोड यहाँ है: मैं निम्न आदेश के साथ ढेर का उपयोग कर निर्माण कर रहा हूँ https://github.com/carbolymer/haskell-missing-debug-symbols

+1

शायद --no-strip जोड़ें? '--no-strip: सभी अभिव्यक्तियों के लिए पुस्तकालयों, निष्पादन योग्य आदि में डीडब्ल्यूएआरएफ डीबगिंग प्रतीक को अलग करना ' – Zpalmtree

+0

@Zpalmtree, यह सही है। मुझे 'स्टैक इंस्टॉल --help' में देखना चाहिए था ... आप इसे एक उत्तर के रूप में जोड़ सकते हैं। – carbolymer

उत्तर

5

--no-strip डिबगिंग से बचाता है ढेर के निर्माण में जानकारी हटा दी जा रही है।

ढेर अब डिबगिंग और रूपरेखा बौना जानकारी के साथ,, का समर्थन करता है --no-पट्टी का उपयोग कर --no-पुस्तकालय-अलग करना और --no-निष्पादन-अलग करना:

documentation से

संकलित पुस्तकालयों और निष्पादन योग्य से ऐसी जानकारी को हटाने के डिफ़ॉल्ट व्यवहार को अक्षम करने के लिए झंडे।

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

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