총 길이 DR

총 길이 DR

Debian 기반 Linux 시스템용 MySQL Workbench를 다운로드하는 동안 두 가지 패키지를 발견했습니다. 첫 번째는 mysql-workbench-community_8.0.30-1ubuntu22.04_amd64.deb, 두 번째는 mysql-workbench-community-dbgsym_8.0.30-1ubuntu22.04_amd64.deb, 후자는 크기가 더 큽니다.

여기에 이미지 설명을 입력하세요.

이 두 패키지의 차이점은 무엇입니까? 어느 것을 사용해야 합니까?

답변1

dbgsym패키지에는 디버깅 기호가 포함되어 있습니다.

총 길이 DR

dbgsym 패키지 무시

세부 사항

귀하의 프로그램(이 경우 mysql)을 C, C++, Go, Rust 등의 컴파일된 언어로 작성하여 실행 파일로 변환한 경우, 디버깅 정보를 통해 특정 개수의 참조 위치와 값을 허용할 수 있습니다. 실행 파일에서 복사됩니다. 원본 파일 소스 코드로 돌아갑니다.

예를 들어, 300~312 및 340~356 바이트가 src/main.c 파일의 127번째 줄에서 나온다고 말할 수 있습니다.

프로그램 카운터가 500에서 512 사이에 있으면 변수 foo가 레지스터 %r12에 저장되어 있다고 말할 수도 있습니다.

0으로 나누기 때문에 프로그램이 충돌하는 경우 특정 소스 코드 줄을 실행하고 특정 변수를 사용하고 있다고 말할 수 있으면 수정이 훨씬 간단해질 수 있습니다.

그러나 이 모든 정보는 공간을 차지합니다. 대부분의 사람들은 mysql과 같은 프로그램을 디버그하는 것을 원하지 않기 때문에 배포판에서는 관심이 없는 사람들이 다운로드하고 저장하기 위해 비용을 지불할 필요가 없도록 디버깅 정보를 추가 기능 패키지로 분할하는 경우가 많습니다.

답변2

dbgsym대표하다"이자형두번째G SYM볼스. "Unix 문화는 파일 이름을 최소한으로 줄이는 경향이 있습니다.

여기에 포함된 것은 애플리케이션에 심각한 오류가 발생하면 디버거가 코어 덤프에서 의미 있는 기호 테이블을 파악하여 포인터 주소를 (아마도) 읽을 수 있는 함수 이름으로 변환한다는 것입니다.

컴파일의 표준 절차는 최종 제품에서 기호 이름을 제거하는 것입니다. 이렇게 하면 많은 공간이 절약됩니다.

긴 이야기 짧게이 패키지가 무엇인지 모른다면 아마도 필요하지 않을 것입니다.

관련 정보