🛠 프로그래밍 일반/개발 상식

기호 파일(Symbol file)이란?

또디기 2025. 4. 7. 22:11

빌드된 코드에 대한 디버깅 정보가 담긴 파일. Visual Studio IDE를 사용하는 경우 .pdb(ProgramDataBase) 확장자로 생성되는 것을 본 적이 있을 것이다.

그 안에는 기호(Symbol) 정보라고 부르는 함수의 서명, 변수의 이름 등과 해당 코드가 몇 번째 라인에 있는 지 등의 정보가 담겨있다. (쉽게 생각해서, 소스 코드와 기계어로 번역된 코드를 연결시켜준다고 할 수 있다.)
기호 파일이 없으면 IDE에서 디버깅을 할 때 콜스택에 함수 이름이 아닌 주소가 찍힌다거나, 브레이크 포인트를 제대로 걸 수 없다거나 한다고 한다.

문제는 내가 작성한 코드는 IDE가 자동으로 기호 파일을 생성해준다지만, DLL 형태로 제공되는 외부 라이브러리의 기호 파일은 생성할 방법이 없다는 것이다.
그래서 라이브러리의 제작사에서 기호 파일을 받아와야 한다. VS에서 Debug - Options - Debugging - Symbols 메뉴에서 기호 파일을 어디서 받아올 지 고르는 게 이것이다.


언리얼에서도 기호 파일(30GB가 넘는다)을 받는 것이 중요하다. 모듈들이 전부 DLL로 제공되기 때문.

'🛠 프로그래밍 일반 > 개발 상식' 카테고리의 다른 글

API, SDK란?  (0) 2025.04.07