본문으로 건너뛰기
0%

GDB 디버깅 준비하기

툴체인이 준비되면 모든 도구가 준비되었다고 볼 수 있습니다.

이제 디버깅해야 할 실제 타겟을 디버깅할 수 있도록 준비해봅시다.

컴파일러 옵션 조정

Desktop View 참조: Linux Foundation 2020 Conference

먼저, C나 C++ 소스 코드를 컴파일할 때 위 다이어그램에 표시된 것처럼 -g 옵션이나 -gN 옵션을 추가하여 소스 코드 디버깅 정보와 같은 다양한 정보를 ELF 파일에 포함시킵니다.

-ggdbN을 사용하면 표준 DWARF 형식 대신 gdb 형식을 사용하여 ELF를 생성합니다.

일반적으로 -g만 추가하면 ELF에 -g2와 동등한 레벨이 부여됩니다.

Desktop View 참조: Linux Foundation 2020 Conference

다음으로 최적화 옵션을 조정해야 합니다.

최적화가 활성화되면 컴파일러가 코드 로직을 분석하고 동일한 결과를 생성하는 다른 실행 코드를 생성할 수 있으므로 디버깅 중에는 최적화 옵션을 제거해야 합니다.

-O0 옵션을 사용하거나 GDB 호환 최적화 옵션을 위해 -Og를 사용하세요.

참고자료

  1. http://www.epnc.co.kr/news/articleView.html?idxno=48128

댓글 남기기

여러분의 생각을 들려주세요

댓글

GitHub 계정으로 로그인하여 댓글을 남겨보세요. 건설적인 의견과 질문을 환영합니다!

댓글을 불러오는 중...