[visual-studio] Visual Studio 2010에서 PDB 파일을 찾거나 열 수없는 이유는 무엇입니까?

저는 VS 2010에서 OpenCV를 사용하려고합니다. 저는 아마추어이고 OpenCV wiki에서 첫 단계를 배우고 있습니다. 그러나 프로젝트를 디버그하려고 할 때 다음 오류가 발생합니다.

‘C : \ Windows \ SysWOW64 \ ntdll.dll’, PDB 파일 ‘C : \ Windows \ SysWOW64 \ kernel32.dll’을 찾거나 열 수 없습니다. PDB 파일 ‘C : \ Windows \ SysWOW64 \ kernellbase.dll’을 찾거나 열 수 없습니다. dll ‘, PDB 파일을 찾거나 열 수 없습니다.

해당 파일이 올바른 디렉토리에 있는데 왜 열 수 없습니까? 문제를 해결하려면 어떻게해야합니까?



답변

먼저 다음 매개 변수를 변경하십시오.

도구-> 옵션-> 디버깅-> 기호-> 서버-> 예

그런 다음 Ctrl+를 누르면 F5놀라운 것을 볼 수 있습니다.


답변

나는 그것들이 오류가 아니라 경고 라고 확신 합니다. 프로젝트는 여전히 잘 실행됩니다.

그러나 항상 컴파일러 경고를 수정해야하므로 무엇을 발견 할 수 있는지 살펴 보겠습니다. 나는 OpenCV에 전혀 익숙하지 않으며 당신이 따르는 위키 튜토리얼에 링크하지 않습니다. 하지만 문제는 64 비트 버전의 Windows (DLL 파일 경로의 “SysWOW64″폴더에서 알 수 있듯이)를 실행하고 있지만 시도중인 OpenCV 항목이 빌드 된 것 같습니다. 32 비트 플랫폼 용. 따라서 여기에 설명 된대로 CMake를 사용하여 프로젝트를 다시 빌드해야 할 수 있습니다 .

보다 구체적으로 나열되는 파일은 Windows 시스템 파일입니다. PDB 파일에는 Visual Studio에서 컴파일 된 코드를 실행하고 디버깅하는 데 사용하는 디버깅 정보가 포함되어 있습니다. 시스템 라이브러리가 자신의 코드를 디버그 할 수 있도록 PDB 파일이 실제로 필요하지는 않습니다. 그러나 원하는 경우 시스템 라이브러리 의 기호도 다운로드 할 수 있습니다. “디버그”메뉴로 이동하여 “옵션 및 설정”을 클릭하고 “소스 서버 지원 활성화”가 표시 될 때까지 오른쪽의 목록 상자를 아래로 스크롤합니다. 옵션이 선택되어 있는지 확인하십시오. 그런 다음 왼쪽의 트리보기에서 “Symbols”를 클릭하고 “Microsoft Symbol Servers”옵션이 선택되었는지 확인합니다. 확인을 클릭하여 대화 상자를 닫은 다음 다시 빌드하십시오.


답변

Visual Studio 커뮤니티 에디션 2015

이 오류가 하루 종일 발생했습니다. 도구> 설정 가져 오기 및 내보내기> 모든 옵션 재설정> 일반 설정 재설정으로 이동하여 마침내 수정했습니다.

재설정되면 Tools> Options> Debugging> Symbols>로 이동 한 다음 Microsoft Symbol Servers 옆의 확인란을 선택하십시오.

디버그 모드에서 앱을 실행하면 다양한 .dll 파일에 대한 기호를 다운로드한다는 창이 열립니다. 이 일을 끝내자.

완료되면 다시 작동합니다.


답변

나는 같은 문제가 있었다. 다른 사람에게서받은 프로젝트를 컴파일 할 때 올바른 시작 프로젝트를 설정하지 않았습니다 (솔루션 탐색기에서 원하는 시작 프로젝트를 마우스 오른쪽 단추로 클릭하고 “시작 프로젝트로 설정”선택). 아마도 이것이 도움이 될 것입니다.


답변

첫 번째 스레드 / 다른 가능성 VS 프로세스의 pdb 파일을 열거 나 찾을 수 없다는 것은 실행 파일이 백그라운드에서 실행되는 경우입니다. mpiexec로 작업 중이 었고이 문제가 발생했습니다. 항상 작업 관리자를 확인하고 프로젝트에서 빌드 할 exec 프로세스를 종료하십시오. 일단 그렇게하면 디버그되거나 잘 구축되었습니다.

또한 경고를 계속하려고하면 중단 점이 적중되지 않고 현재 실행 파일이 없습니다.


답변

대한 VS2013 내가 한 여기에 자신을 발견 사용자 :

Tools -> Options -> Debugging -> Symbols

당신은 것을 볼 수 있습니다 Cache symbols in this directory:필드가 비어; 경로를 직접 찾아 보거나 입력하거나 계속해서 Load all symbols버튼을 클릭 할 수 있습니다. “심볼 캐시 디렉토리를 선택하지 않았으므로 기본값이 사용됩니다”라는 경고 창이 나타납니다. 이제 C:\Users\XXXX\AppData\Local\Temp\SymbolCache이전에 비어있는 경로 필드에 표시됩니다. Load all symbols두 번째 클릭 하면 설정되어야합니다. 확인을 누르고 부지런함을 위해 솔루션을 정리하고 다시 빌드하십시오.


답변

이러한 오류는 때때로 프로젝트를 컴파일 할 때 권한이 부족하여 발생한다는 것을 발견했습니다. 따라서 제대로 작동하도록 관리자 권한으로 실행합니다.