gdb-python

    1

    1답변

    나는 파이썬 (v2.7) 스크립트를 GDB (v7.5.1-0.7.29)에 작성하고있다. 특정 조건이 거짓 일 때 파이썬 스크립트를 종료하고 싶습니다. 그러나 나는 GDB를 그만두고 싶지 않다. sys.exit(), exit() 및 quit()을 사용해 보았지만이 경우 GDB를 종료합니다. 파이썬 스크립트를 종료하는 방법은 없지만 gdb는 종료하지 마십시오.

    0

    1답변

    필자가 작성한 예쁜 프린터의 경우 컨테이너에서 사용되는 정렬 또는 유형을 알고 싶습니다. 불행히도 alignof() 또는 유사한 "표준"연산자를 사용하면 작동하지 않습니다 (https://sourceware.org/bugzilla/show_bug.cgi?id=17095). 또한 작동하지 않는 소스 코드에서 직접 작업 "전형적인"매크로 트릭을 사용 : p (

    0

    1답변

    Gdb에서 파이썬 API를 사용하여 새 매개 변수를 완전히 정의하는 방법을 알 수 없습니다. 나는 소스는 다음이 포함 된 스크립트를 python param = gdb.Parameter("test", gdb.COMMAND_NONE, gdb.PARAM_OPTIONAL_FILENAME) param.set_doc = "This is the documentati

    0

    1답변

    동일한 텍스트 문자열을 출력하는 다음 gdb 명령을 고려하십시오. 예상대로 gdb.Value() 인스턴스를 반환 gdb.lookup_symbol()이 경우, 그것의 문자열 화 (stringification)에서 (gdb) print foo (gdb) python print(gdb.lookup_symbol('foo')) 기본 gdb를 문자열 화 (str

    0

    1답변

    바운드 된 Maner에서 명령 추적을 수행하는 GDB 스크립트를 작성하려고합니다 (예 : addr 및 stop addr). 아마 나는 구글에서 실패하고있다. 그러나 나는 실존에서 이것을 발견하는 것처럼 보인다. 는 여기에 내 찔린입니다 :는 python def start_logging(): gdb.execute("set logging on")

    1

    2답변

    이 같은 ++ 뭔가 C에서 구조체를 가지고 : struct HeapBlock { char* data; } struct DataBlock { int size; HeapBlock hb; } 이이 프레임 워크의 일부이며 여러 가지 다른 회원이, 헬퍼 등등 그러나 이들은 중요한 부분입니다. NAME TYPE VAL

    2

    1답변

    GDB에 "summariser"함수를 쉽게 추가 할 수있게 해주는 편리한 클래스가 있습니다. 예쁜 프린터 (예 : Rect 클래스는 파이썬에 의해 계산 된 [Area] 필드를 가질 수 있습니다). 그러면 기존의 모든 하위 항목도 인쇄되므로 모든 것을 한 번에 볼 수 있습니다. class SummaryAndFieldIterator: """

    0

    1답변

    gdb (내 경우에는 arm-none-eabi-gdb) 내의 python을 사용하여 C 디버깅에 대해 배우고 있습니다. 이 기능을 사용하여 ARM Cortex-M에서 실행중인 실시간 OS의 스레드 정보를 얻으려고합니다. 일부 OS 구조를 읽으면 OS의 스레드 제어 블록 인 에 액세스 할 수 있습니다. 나는 각 스레드의 PC와 SP를 안다. 어떻게 gdb의

    1

    2답변

    나는 예쁜 프린터를 제공하는 std :: objects 집합을 포함하는 클래스의 예쁜 프린터를 작성하려고합니다. 나는 꽤 인쇄 클래스 "FooContainer"의 객체를 할 수 있도록하려는 #include <set> #include <iostream> #include <cassert> class Foo { public: int x;

    0

    1답변

    GDB 용 파이썬 스크립트를 작성하여 함수를 추적하려고합니다. 아이디어는 주소 위치에 중단 점을 설정하고 프로그램을 실행 한 다음 중단되면 파일 레지스터, 벡터 및 스택에 로그하고 다음 명령이 될 주소를 찾아 브레이크 포인트를 설정합니다 그 위치와 헹굼과 반복. 설명서를 읽었을 때 레지스터, 벡터 및 메모리 위치가 쉽게 덤프 될 수 있다고 확신합니다. 실제