Jak wyświetlić listę wszystkich funkcji programu z GDB?
Chciałbym gdbnatychmiast uruchomić plik wykonywalny, tak jakbym napisał „run” (motywacja: nie lubię pisać „run”). Jednym ze sposobów jest potokowanie polecenia w gdbten sposób: $ echo run | gdb myApp Ale problem z tym podejściem polega na tym, że tracisz interaktywność z gdbnp. jeśli punkt...
Czy można zapisać / zrzucić plik core za pomocą gdb? Czasami chcę zapisać plik, aby później go przeanalizować.
Wciąż otrzymuję ten komunikat o błędzie podczas próby dodania punktu przerwania w gdb. Użyłem tych poleceń do kompilacji: gcc -g main.c utmpib2.c -o main.o and: cc -g main.c utmpib2.c -o main.o and also: g++ -g main.c utmpib2.c -o main.o Próbowałem też „-ggdb” zamiast „-g” i nadal otrzymuję...
Kiedy używam gcc do kompilowania programów w C, zwykle używam -gdo pobierania informacji debugowania do pliku elf, aby gdb mógł mi pomóc w razie potrzeby. Jednak zauważyłem, że niektóre programy używają -ggdb, ponieważ ma to na celu uczynienie informacji debugowania bardziej przyjaznymi dla...
Lubię, gdy GDB ustawia punkt przerwania, gdy zmienna równa się pewnej wartości, którą ustawiłem, próbowałem tego przykładu: #include <stdio.h> main() { int i = 0; for(i=0;i<7;++i) printf("%d\n", i); return 0; } Wyjście z GDB: (gdb) break if ((int)i == 5) No default breakpoint...
Wiem, że możemy użyć kilku poleceń, aby uzyskać dostęp i odczytać pamięć: na przykład print, p, x ... Ale jak mogę zmienić zawartość pamięci w dowolnym określonym miejscu (podczas debugowania w GDB)?
Jestem poza docelowym plikiem wykonywalnym gdb i nie mam nawet stosu, który odpowiadałby temu celowi. I tak chcę zrobić jednoetapowo, aby móc zweryfikować, co się dzieje w moim kodzie asemblera, ponieważ nie jestem ekspertem w montażu x86. Niestety, gdb odmawia wykonania tego prostego...
Mam funkcję, która jest wywoływana kilka razy i ostatecznie dochodzi do awarii. Nie chcę jednak ustawiać punktu przerwania w tej funkcji i zatrzymywać się po każdym wywołaniu, ponieważ będę tu przez lata. Słyszałem, że mogę ustawić counterw GDB punkt przerwania i za każdym razem, gdy punkt...
Mam wielowątkową aplikację, która jest bardzo stabilna na wszystkich moich komputerach testowych i wydaje się stabilna dla prawie każdego z moich użytkowników (w oparciu o brak skarg na awarie). Jednak aplikacja często się zawiesza dla jednego użytkownika, który był na tyle uprzejmy, aby wysyłać...
Czy ktoś może wyjaśnić to zachowanie gdb? 900 memset(&new_ckpt_info,'\0',sizeof(CKPT_INFO)); (gdb) **903 prev_offset = cp_node->offset;** (gdb) **905 m_CPND_CKPTINFO_READ(ckpt_info,(char *)cb->shm_addr.ckpt_addr+sizeof(CKPT_** HDR),i_offset); (gdb) **903 prev_offset =...
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...