차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
linuxfromscratch:12.1:151-about_debugging_symbols [2024/05/27 12:25] – 만듦 - 바깥 편집 127.0.0.1linuxfromscratch: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  ^^^
 +|[[.:150-e2fsprogs-1.47.0|이전]]  |  [[.:08-installing_basic_system_software|위로]] / [[.:12.1|처음으로]]  |  [[.:152-stripping|다음]]|
  
 +|E2fsprogs-1.47.0  |  스트립|
 +
 +----
 +
 +===== 8.81. 디버깅 심볼 =====
 +
 +대부분의 프로그램과 라이브러리는 기본적으로 디버깅 심볼이 포함된 상태로 컴파일됩니다(gcc의 //-g// 옵션 사용). 즉, 디버깅 정보를 포함하여 컴파일된 프로그램이나 라이브러리를 디버깅할 때 디버거는 메모리 주소뿐만 아니라 루틴과 변수의 이름도 제공할 수 있습니다.
 +
 +이러한 디버깅 기호를 포함하면 프로그램이나 라이브러리가 크게 확대됩니다. 다음은 이러한 심볼이 차지하는 공간의 양을 보여주는 두 가지 예입니다:
 +
 +  * 디버깅 심볼이 포함된 ''bash'' 바이너리: 1200KB
 +  * 디버깅 심볼이 없는 ''bash'' 바이너리: 480KB(60% 더 작음)
 +  * 디버깅 심볼이 있는 Glibc 및 GCC 파일(''/lib'' 및 ''/usr/lib''): 87MB
 +  * 디버깅 심볼이 없는 Glibc 및 GCC 파일: 16MB(82% 더 작음)
 +
 +크기는 사용된 컴파일러와 C 라이브러리에 따라 다르지만 디버깅 심볼이 제거된 프로그램은 일반적으로 제거되지 않은 프로그램보다 약 50%에서 80% 정도 작습니다. 대부분의 사용자는 시스템 소프트웨어에서 디버거를 사용하지 않기 때문에 이러한 심볼을 제거하면 디스크 공간을 많이 확보할 수 있습니다. 다음 섹션에서는 프로그램과 라이브러리에서 모든 디버깅 심볼을 제거하는 방법을 보여 드립니다.
  • linuxfromscratch/12.1/151-about_debugging_symbols.1716812714.txt.gz
  • 마지막으로 수정됨: 2024/05/27 12:25
  • 저자 127.0.0.1