본문 바로가기
IT

PDB 파일을 찾거나 열 수 없습니다.

by Pincher 2014. 1. 5.

 

Visual Studio에서 프로젝트 디버그 시, "...을(를) 로드했습니다. PDB 파일을 찾거나 열 수 없습니다."

 

라는 메세지가 떠서 구글링을 해본 결과,

1. 윈도우가 기호 파일을 로드하지 못한다는 뜻이며, 디버그 시 시스템 dll 파일들로부터 다양한 정보들을 보기 위해서는 dll 파일의 기호(pdb 파일) 파일이 필요하다.

http://www.dreamincode.net/forums/topic/263950-cannot-find-or-open-the-pdb-file/

 

2. 보통 VS 템플릿을 사용하지 않고 직접 프로젝트를 생성하거나 한 경우에 에러가 발생할 확률이 높다. 직접 프로젝트를 생성한 경우, VS는 개발자가 기호 파일이 어디 있는지 안다고 가정한다.

http://www.kirupa.com/forum/showthread.php?347809-Cannot-find-or-open-the-PDB-file-hello-world-first-practise


라고 한다.
결국 시스템 기호파일(.dll) 을 못찾는다는 얘긴데, Visual Studio 설정에서 Microsoft 사의 서버에서 다운받거나 직접 파일을 다운받아서 해결할 수 있다고 한다. 나는 VS의 설정을 통해 Microsoft 사의 서버에서 기호 파일들을 다운받는 식으로 해결했다.

 

Visual Studio의 디버그 -> 옵션 및 설정 -> 기호에 들어가서

위의 같이 "Microsoft 기호 서버"에 체크해주면 "이 디렉터리의 기호 캐시:" 에 지정된 경로로 MS사의 서버로부터 기호파일을 다운받게 된다. 이후로부터는 Visual Studio가 해당 경로에 다운받은 파일로부터 기호를 로드할 수 있다.

 

설정을 마치고 프로젝트를 실행하면 약간의 다운로드가 진행된 후, 아래와 같이 기호가 '잘' 로드되었다고 한다.

(켜놓고 자리를 비워서 얼마나 걸리는지는 모르겠다.)

 

 

이제 기호파일을 오프라인에 저장해서 서버에서 기호파일을 받을 필요는 없으니, 다시 설정에 들어가서 "Microsoft 기호 서버"의 체크를 풀어주고 다운받은 파일들로부터 기호를 로드할 수 있도록 디렉터리 경로는 그대로 남겨두자.

 

댓글