URL : http://www.tomatowax.com/ZeroboardXE/7349 Visual C++ & Warning LNK4099 : PDB 1. 개요 VC++ 환경에서 외부 라이브러리를 링크하면 가끔 LNK4099 워닝이 발견될 수 있습니다. LNK 에 적혀있듯이 이것은 링크와 관련된 워닝입니다. LNK4099 워닝은 해당 라이브러리가 디버그 목적으로 이용될 수 있는 디버깅 정보를 생성하였는데 생성된 디버깅 정보가 라이브러리 혹은 외부에 .pdb 파일로 어플리케이션에 전달되지 않고 있기 때문에 발생하는 워닝입니다. 보통 warning LNK4099: '*.pdb' PDB was not found 와 같은 형태로 워닝이 출력되며, 사용자는 이를 무시할 수 있습니다. 이 워닝은 단순하게 링크한 라이..
/DEBUG 옵션을 사용하면 .exe 파일이나 DLL에 대한 디버깅 정보를 만들 수 있습니다. 링커에서는 PDB(프로그램 데이터베이스)에 디버깅 정보를 보관하고, 해당 프로그램의 후속 빌드 과정에서 이 PDB를 업데이트합니다. 디버깅을 위해 만든 .exe 파일이나 DLL에는 해당 PDB의 이름과 경로가 포함됩니다. 프로그램을 디버깅하면 디버거에서는 이 포함된 이름을 읽고 PDB를 사용합니다. 링커에서는 프로그램의 기본 이름과 확장명 .pdb를 사용하여 프로그램 데이터베이스의 이름을 지정하고 프로그램 데이터베이스의 생성 경로를 포함시킵니다. 이 기본값을 사용하지 않으려면 /PDB를 설정하고 다른 파일 이름을 지정합니다. 컴파일러의 줄 번호만(/Zd) 또는 C7 호환(/Z7) 옵션을 사용하면 디버깅 정보가 ..