과연 오브젝트 파일들을 무엇이면 1. nm으로 출력되는 심벌들은 어떻게 생겨난 것이며 2. gdb 는 위의 심벌들을 어떻게 이용해서 디버깅을 하는 것이며 3. 실행파일은 동적 라이브러리와 어떻게 메핑이되어 실행이 되는 것이며 4. stip은 위의 심벌들을 어떻게 제거를 하길래 실행파일 크기는 줄이면서 정상적으로 실행은 되는 건지 자세히 알고 싶습니다. kldp 에 있는 내용은 너무 기초적인 내용뿐이라 성에 안차는 군요 그럼...
심볼 테이블은 디버깅용 함수 이름 같은 정보를 담고 있고, strip 은 이 정보를 제거해 파일 크기를 줄입니다. 실행은 동적 링커가 라이브러리를 연결해 처리하므로 정상 동작합니다. 자세한 내용은 ELF 형식과 링커 문서를 참고하세요.