15.3. GCC를 사용하여 C 및 C++ 애플리케이션 디버깅 활성화


디버깅 정보는 크기 때문에 기본적으로 실행 파일에 포함되지 않습니다. C 및 C++ 애플리케이션을 사용하여 디버깅할 수 있도록 하려면 컴파일러에 디버깅 정보를 작성하도록 명시적으로 지정해야 합니다.To enable debugging of your C and C++ applications with it, you must explicitly instruct the compiler to create debugging information.

GCC를 사용하여 디버깅 정보 생성 활성화

코드를 컴파일 및 연결할 때 GCC 로 디버깅 정보를 생성할 수 있도록 하려면 -g 옵션을 사용합니다.

$ gcc ... -g ...
  • 컴파일러 및 링커에서 수행하는 최적화로 인해 원래 소스 코드와 관련되기 어려운 실행 코드가 발생할 수 있습니다. 변수는 롤백되지 않고 주변 항목에 병합된 작업을 최적화할 수 있습니다. 이는 디버깅에 부정적인 영향을 미칩니다. 디버깅 환경을 개선하려면 -Og 옵션으로 최적화를 설정하는 것이 좋습니다. 그러나 최적화 수준을 변경하면 실행 코드가 변경되고 일부 버그를 제거하기 위해 실제 동작이 변경될 수 있습니다.
  • f compare-debug GCC 옵션은 디버그 정보와 디버그 정보 없이 GCC에서 컴파일한 코드를 테스트합니다. 결과 두 바이너리 파일이 동일한 경우 테스트가 통과합니다. 이 테스트를 사용하면 디버깅 옵션의 영향을 받지 않으므로 디버그 코드에 숨겨진 버그가 없습니다. f compare-debug 옵션을 사용하면 컴파일 시간이 크게 증가합니다. 이 옵션에 대한 자세한 내용은 GCC 도움말 페이지를 참조하십시오.

추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.