«gdb» etiketlenmiş sorular

GNU yazılım sistemi için standart hata ayıklayıcı olan GDB ile ilgili veya ilgili sorunlar için bu etiketi kullanın.

4
GDB: değişken eşit değerde kırılır
Bir değişken ayarladığım bir değere eşit olduğunda GDB'nin bir kırılma noktası belirlemesini seviyorum, bu örneği denedim: #include <stdio.h> main() { int i = 0; for(i=0;i<7;++i) printf("%d\n", i); return 0; } GDB'den çıktı: (gdb) break if ((int)i == 5) No default breakpoint address now. (gdb) run Starting program: /home/SIFE/run 0 1 …
91 c  gdb 

3
Belirtilen yürütülebilir dosyanın dışındaki tek adımlı derleme kodunu gdb kullanmak, "geçerli işlevin sınırları bulunamıyor" hatasına neden oluyor
Gdb'nin hedef yürütülebilir dosyasının dışındayım ve bu hedefe karşılık gelen bir yığınım bile yok. Yine de tek adımda yapmak istiyorum, böylece montaj kodumda neler olup bittiğini doğrulayabilirim, çünkü x86 montajında ​​uzman değilim. Ne yazık ki, gdb bu basit derleme düzeyinde hata ayıklamayı yapmayı reddediyor. Uygun kesme noktasını ayarlamama ve durdurmama …


2
Bir GDB kesme noktası nasıl ancak noktaya belirli sayıda ulaşıldıktan sonra kırılır?
Çok sayıda olarak adlandırılan ve sonunda segment hatası olan bir işlevim var. Ancak, bu işlevde bir kesme noktası belirlemek ve her çağrıldıktan sonra durmak istemiyorum çünkü yıllarca burada olacağım. counterBir kesme noktası için GDB'de a ayarlayabileceğimi duydum ve kesme noktasına her vurulduğunda sayaç azaltılır ve yalnızca counter= 0 olduğunda tetiklenir …
85 gdb  breakpoints 

4
"EXC_BREAKPOINT (SIGTRAP)" istisnaları kesme noktalarında hata ayıklamadan mı kaynaklanıyor?
Tüm test makinelerimde çok kararlı olan ve neredeyse tüm kullanıcılarım için kararlı görünen (herhangi bir çökme şikayetine dayanmayan) çok iş parçacıklı bir uygulamam var. Uygulama, çökme raporları gönderecek kadar nazik olan bir kullanıcı için sık sık çöküyor. Tüm kilitlenme raporları (~ 10 ardışık rapor) temelde aynı görünüyor: Date/Time: 2010-04-06 11:44:56.106 …

8
GDB neden satırlar arasında tahmin edilemeyecek şekilde atlar ve değişkenleri "<optimize edilmiş değer>" olarak yazdırır?
Herhangi biri gdb'nin bu davranışını açıklayabilir mi? 900 memset(&amp;new_ckpt_info,'\0',sizeof(CKPT_INFO)); (gdb) **903 prev_offset = cp_node-&gt;offset;** (gdb) **905 m_CPND_CKPTINFO_READ(ckpt_info,(char *)cb-&gt;shm_addr.ckpt_addr+sizeof(CKPT_** HDR),i_offset); (gdb) **903 prev_offset = cp_node-&gt;offset;** (gdb) **905 m_CPND_CKPTINFO_READ(ckpt_info,(char *)cb-&gt;shm_addr.ckpt_addr+sizeof(CKPT_ HDR),i_offset);** (gdb) **908 bitmap_offset = client_hdl/32;** (gdb) **910 bitmap_value = cpnd_client_bitmap_set(client_hdl%32);** (gdb) **908 bitmap_offset = client_hdl/32;** (gdb) **910 bitmap_value = cpnd_client_bitmap_set(client_hdl%32);** (gdb) …

1
ASLR açık olmasına rağmen __libc_start_main adresi GDB içinde neden hep aynı?
Breakpoint 1, 0x00007ffff7de8060 in __libc_start_main () from /usr/lib/libc.so.6 (gdb) r The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /home/firstlove/projects/org-ioslide/example/a.out Breakpoint 1, 0x00007ffff7de8060 in __libc_start_main () from /usr/lib/libc.so.6 (gdb) r The program being debugged has been started already. Start it …
16 c  linux  gdb  libc  aslr 
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.