2015-08-01 2 views
5

एक क्यूटी 5 आवेदन डीबग करते समय, मुझे कभी-कभी क्यूटी 5 के आंतरिक में दिलचस्पी नहीं होती है बल्कि एप्लिकेशन की संरचना में भी दिलचस्पी नहीं होती है। इसलिए मुझे क्यूटी 5 पुस्तकालयों के सभी डिबगिंग प्रतीकों को लोड करने की आवश्यकता नहीं है क्योंकि इन्हें लोड करने में कुछ सेकंड लगते हैं।जीडीबी को (बड़ी) लाइब्रेरी के लिए डिबगिंग प्रतीक लोड करने से कैसे रोकें?

क्या जीडीबी को इन क्यूटी 5 पुस्तकालयों के लिए प्रतीकों को लोड करने से रोकना संभव है जबकि मेरे आवेदन के लिए डिबगिंग प्रतीकों को रखते हुए?

+3

शायद यह पृष्ठ: https://developer.mozilla.org/en-US/docs/Using_gdb_on_wimpy_computers कुछ उपयोग का हो सकता है। –

उत्तर

7

क्या जीडीबी को इन क्यूटी 5 पुस्तकालयों के लिए प्रतीकों को लोड करने से रोकना संभव है जबकि मेरे आवेदन के लिए डिबगिंग प्रतीकों को रखते हुए?

हां।

रिचर्ड Critten की टिप्पणी का उल्लेख के रूप में, auto-solib-add0 के लिए सेटिंग सभी साझा पुस्तकालयों के लिए प्रतीकों की लोडिंग को रोकने जाएगा, और आप तो sharedlibrary कमांड के साथ मैन्युअल रूप से फ़ाइलें जोड़ सकते हैं (जो एक regex स्वीकार करता है)। यदि यह regex छोड़ा गया है, तो सभी साझा पुस्तकालयों को लोड कर रहे हैं।

कि हालांकि सभी प्रतीकों (न सिर्फ डिबग प्रतीक) की स्वत: लोड हो रहा है रोका जा सके, और यह भी प्रणाली पुस्तकालयों, जो अक्सर स्टैक के लिए आवश्यक हैं के लिए प्रतीकों में से ऑटो लोड हो रहा है रोका जा सके।

क्यूटी 5 पुस्तकालयों की प्रतिलिपि को कहीं भी पूर्ण डीबग जानकारी के साथ सहेजने के लिए एक बेहतर तरीका हो सकता है, उदा। ~/Qt5-debug/, फिर मूल पुस्तकालयों पर strip -g चलाएं। इस तरह, आपको सभी पुस्तकालयों के लिए प्रतीकात्मक जानकारी मिल जाएगी, और दुर्लभ मामले में जब आपको वास्तव में क्यूटी 5 के लिए पूर्ण-डीबग जानकारी की आवश्यकता होती है, तो आप अभी भी जीडीबी file ~/Qt5-debug/libQt5Core.so.5.2 या इसी तरह के कमांड का उपयोग कर ऐसा कर सकते हैं।

जीडीबी मैनुअल से अध्याय GDB Files इस तरह के अलग डीबगिंग प्रतीकों का उपयोग करने पर अधिक दस्तावेज है।

+0

धन्यवाद रबर बतख! इस प्रश्न को पोस्ट करने के कुछ ही समय बाद मुझे जीडीबी मैनुअल में प्रासंगिक अनुभाग मिल गए, उम्मीद है कि आप उन्हें जोड़ने में मुझे कोई फर्क नहीं पड़ता :-) – Lekensteyn

+1

ग्रेट धन्यवाद !!! रास्पबेरी पर क्यूटी ऐप की डिबगिंग शुरू करना वास्तव में लंबा समय लगता है। जीडीबी शुरू करने के इस विकल्प के साथ तुरंत होता है। – kaegoorn48

+0

आप इसे स्थायी बनाने के लिए ~/.gdbinit पर यह सटीक कमांड भी जोड़ सकते हैं। – sdd

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