차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
linuxfromscratch:12.1:151-about_debugging_symbols [2024/05/27 12:25] – 만듦 - 바깥 편집 127.0.0.1 | linuxfromscratch:12.1:151-about_debugging_symbols [2024/06/15 12:45] (현재) – [8.81. 디버깅 심볼 정보] baecy | ||
---|---|---|---|
줄 1: | 줄 1: | ||
+ | ^ Linux From Scratch - Version 12.1-systemd | ||
+ | ^ Chapter 8. Installing Basic System Software | ||
+ | |[[.: | ||
+ | |E2fsprogs-1.47.0 | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ===== 8.81. 디버깅 심볼 ===== | ||
+ | |||
+ | 대부분의 프로그램과 라이브러리는 기본적으로 디버깅 심볼이 포함된 상태로 컴파일됩니다(gcc의 //-g// 옵션 사용). 즉, 디버깅 정보를 포함하여 컴파일된 프로그램이나 라이브러리를 디버깅할 때 디버거는 메모리 주소뿐만 아니라 루틴과 변수의 이름도 제공할 수 있습니다. | ||
+ | |||
+ | 이러한 디버깅 기호를 포함하면 프로그램이나 라이브러리가 크게 확대됩니다. 다음은 이러한 심볼이 차지하는 공간의 양을 보여주는 두 가지 예입니다: | ||
+ | |||
+ | * 디버깅 심볼이 포함된 '' | ||
+ | * 디버깅 심볼이 없는 '' | ||
+ | * 디버깅 심볼이 있는 Glibc 및 GCC 파일(''/ | ||
+ | * 디버깅 심볼이 없는 Glibc 및 GCC 파일: 16MB(82% 더 작음) | ||
+ | |||
+ | 크기는 사용된 컴파일러와 C 라이브러리에 따라 다르지만 디버깅 심볼이 제거된 프로그램은 일반적으로 제거되지 않은 프로그램보다 약 50%에서 80% 정도 작습니다. 대부분의 사용자는 시스템 소프트웨어에서 디버거를 사용하지 않기 때문에 이러한 심볼을 제거하면 디스크 공간을 많이 확보할 수 있습니다. 다음 섹션에서는 프로그램과 라이브러리에서 모든 디버깅 심볼을 제거하는 방법을 보여 드립니다. |