이 페이지에서

GDB

GDB 프로세스 관리를 위한 환경설정을 지정하려면 환경설정 > Debugger > GDB 으로 이동하세요.

디버거 환경 설정의 GDB 탭

다음 표에는 기본 설정이 요약되어 있습니다.

기본 설정
GDB timeout응답하지 않는 GDB 프로세스를 종료하는 시간(초) 기본값인 40초면 대부분의 애플리케이션에 충분하지만 느린 컴퓨터에서 대용량 라이브러리를 로드하거나 소스 파일을 나열하는 데 이보다 훨씬 오래 걸리는 경우 값을 늘리세요.
Skip known frames when stepping여러 단계를 한 단계로 압축하여 코드에 들어갈 때 노이즈가 적은 디버깅을 할 수 있습니다. 예를 들어 원자 참조 카운팅 코드를 건너뛰고 신호 방출에 대한 단일 스텝 인투가 연결된 슬롯에서 바로 끝납니다.
Show a message box when receiving a signal디버깅 중에 애플리케이션이 SIGSEGV와 같은 신호를 수신하는 즉시 메시지 상자를 표시합니다.
Adjust breakpoint locationsGDB를 사용하면 코드가 생성되지 않은 소스 줄에 중단점을 설정할 수 있습니다. 이러한 상황에서는 중단점이 실제로 코드가 생성된 다음 소스 코드 줄로 이동합니다. 소스 코드 편집기에서 중단점 마커를 이동하여 이러한 일시적인 변경 사항을 반영하려면 이 확인란을 선택합니다.
Use dynamic object type for display동적 또는 정적 유형의 객체를 표시할지 여부를 선택합니다. 동적 유형을 선택하면 디버깅 속도가 느려질 수 있습니다.
Load .gdbinit file on startup디버거 시작 시 사용자의 기본 .gdbinit 파일을 읽습니다.
Load system GDB pretty printers컴퓨터에 설치되어 있거나 애플리케이션에서 사용하는 라이브러리에 연결된 기본 GDB 예쁜 프린터를 사용합니다.
Use Intel style disassembly기본 AT&T 스타일 디스어셈블리에서 인텔 스타일로 전환합니다.
Use automatic symbol cacheGDB 심볼 인덱스의 사본을 디스크의 캐시에 자동으로 저장하고 나중에 동일한 바이너리를 로드할 때 이 캐시에서 검색합니다.
Use debug info daemon시스템 패키지에 대한 디버그 정보를 자동으로 검색하려고 시도합니다.

추가 명령 실행

GDB가 시작된 후 디버깅된 애플리케이션이 시작되거나 첨부되기 전, 그리고 디버깅 헬퍼가 초기화되기 전에 GDB 명령을 실행하려면 Additional Startup Commands 에 입력합니다.

GDB가 원격 대상에 성공적으로 연결된 후 GDB 명령을 실행하려면 Additional Attach Commands 에 입력합니다. monitor reset 또는 load 와 같이 여기에 대상을 추가로 설정하는 명령을 추가할 수 있습니다.

간단한 Python 명령을 실행하려면 앞에 python 를 붙입니다. 여러 줄에 걸친 일련의 Python 명령을 실행하려면 블록 앞에 python 을 추가하고 별도의 줄에 end 을 추가합니다. 임의의 Python 스크립트를 실행하려면 python execfile('/path/to/script.py') 을 사용합니다.

확장된 GDB 환경설정

Extended 그룹의 기본 설정은 GDB의 고급 또는 실험적 기능에 대한 액세스를 제공합니다. 이러한 기능을 활성화하면 디버깅 환경에 부정적인 영향을 미칠 수 있으므로 주의해서 사용하세요.

기본 설정Value
Use asynchronous mode to control the debugged process백그라운드(비동기) 모드에서 명령을 실행합니다. GDB는 프로그램이 실행되는 동안 다른 명령을 실행할 수 있는 명령 프롬프트를 즉시 엽니다.
Use common locations for debug informationGDB를 시작할 때 /usr/src/debug 와 같은 디버그 정보 위치에 대한 일반 경로를 추가합니다.
Stop when qWarning() is calledqWarning() 함수에 중단점을 추가합니다.
Stop when qFatal() is calledqFatal() 함수에 중단점을 추가합니다.
Stop when abort() is calledabort() 함수에 중단점을 추가합니다.
Enable reverse debugging뒤로 단계를 활성화합니다. 이 기능은 GDB 측에서 매우 느리고 불안정합니다. 시스템 호출을 거슬러 올라갈 때 예측할 수 없는 동작이 나타나며 디버깅 세션을 파괴할 가능성이 매우 높습니다.
Debug all child processes포크 후 모든 자식을 계속 디버깅합니다.

방법: 디버그, 디버깅, 디버거디버거도참조하세요 .

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.