2012-06-03 12 views
5

को अलग करें मैं जीडीबी में कोड की केवल एक विशेष पंक्ति को अलग करना चाहता हूं; ऐसा करने के लिए, मुझे कहा लाइन के स्मृति पते की जरूरत है। मैं gdb में कोड की किसी विशेष पंक्ति का पता कैसे प्राप्त कर सकता हूं? या बेहतर अभी तक, क्या लाइन नंबर से अलग होने के लिए जीडीबी में कोई कमांड है?जीडीबी एक लाइन

उत्तर

3

उस लाइन पर एक ब्रेक डालें जिसे आप अलग करना चाहते हैं और फिर, आप वर्तमान निर्देश प्राप्त करने का प्रयास कर सकते हैं।

disp/i $pc 

यह हमेशा मेरे लिए काम करता है, जब मैं कोई डीबग जानकारी के साथ बाइनरी डीबग करता हूं। इसके अलावा कोई भी pc या तो print $pc या info registers द्वारा प्राप्त कर सकता है या बस x निर्देश का उपयोग कर सकते हैं। उदा .:

x/10i address //displays the first 10 instructions in assembly starting from address 

या

x/10i register //displays the first 10 instructions starting from address stored in register 
2

आप उपयोग कर सकते हैं: set disassemble-next-line on लाइन संख्या से diassemble करने के लिए। फिर उस विशेष तकनीक पर ब्रेकपॉइंट सेट करना चाहते हैं, जिसे आप देखना चाहते हैं।