> 백엔드 개발 > C++ > 예외를 포착하고 있음에도 불구하고 GDB가 raise.c 파일 누락에 대한 오류를 발생시키는 이유는 무엇입니까?

예외를 포착하고 있음에도 불구하고 GDB가 raise.c 파일 누락에 대한 오류를 발생시키는 이유는 무엇입니까?

Patricia Arquette
풀어 주다: 2024-11-10 06:57:02
원래의
1035명이 탐색했습니다.

Why is GDB throwing an error about a missing raise.c file even though I'm catching an exception?

GDB 오류: raise.c 파일 누락

GDB를 실행하여 프로그램을 디버그할 때 사용자는 누락된 파일에 대해 불평하는 오류 메시지를 접할 수 있습니다. raise.c 파일입니다. 이는 예외를 포착했음에도 불구하고 발생합니다. 이 문제를 해결하려면 C 라이브러리의 전체 소스 코드 디버깅을 위해 GDB를 준비해야 합니다.

  1. Libc6의 Debuginfo 버전 설치:

    아직 설치하지 않은 경우 libc6의 debuginfo 버전을 설치하세요. 사용:

    sudo apt install libc6-dbg
    로그인 후 복사
  2. 패키지 시스템 준비:

    패키지 시스템이 다음을 통해 소스 코드 패키지를 처리할 수 있는지 확인하세요.

    • dpkg-dev 설치: sudo apt install dpkg-dev
    • /etc/apt/sources.list에서 deb-src 줄 확인(필요한 경우 주석 처리 안 함)
    • 저장소 업데이트: sudo apt update
  3. 소스 다운로드 코드:

    • 디렉토리 생성(예: /opt/src)
    • 설치된 C 라이브러리 버전의 소스 코드 다운로드:

      cd /opt/src
      apt source libc6
      로그인 후 복사
    • 디렉터리 이름을 기록해 둡니다(예: /opt/src/glibc-2.23)
  4. GDB 구성:

    다음을 실행하여 GDB가 소스 코드를 예상하는 디렉터리를 결정합니다. (gdb) GDB 내의 정보 소스. (gdb) set replacement-path를 사용하여 올바른 디렉터리 경로를 지정하거나 소스 코드를 예상 위치로 이동하세요.

위 내용은 예외를 포착하고 있음에도 불구하고 GDB가 raise.c 파일 누락에 대한 오류를 발생시키는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿