2014-01-12 2 views
1

mingw로 컴파일 된 exe 파일을 가지고 있지만 Windows MiniDump 기능을 통해 생성 된 코어 덤프 파일이 있습니다. WinDbg에서 코어 덤프를 열면 호출 스택 주소를 텍스트 파일로 복사 한 다음 addr2line을 통해 실행할 수 있습니다. 그러나 확실히 더 좋은 방법이 있어야합니다. gcc와 미니 덤프 파일에 의해 생성 된 디버그 정보를 구문 분석 할 수있는 다른 디버거가 있습니까?Windows MiniDump 호출을 통해 생성 된 코어 덤프에서 스택 추적을 얻으려면 어떻게해야합니까?

+1

일반적으로 windbg 또는 Visual Studio 디버거에서 덤프 파일을 열면 심볼이 사용 가능한 경우 자동으로로드되고 호출 스택이 제공됩니다. 덤프가 생성 된 빌드의 실행 파일과 PDB 파일이 있습니까? 항상 사용할 수있는 좋은 방법은 심볼 서버를 사용하여 심볼을 저장하는 것입니다. –

+0

@RetiredNinja 말했듯이 실행 파일은 mingw-gcc 빌드를 빌드 한 것이므로 PDB 파일이 없습니다. – chacham15

+0

http://blog.morlad.at/blah/mingw_postmortem –

답변

0

(Visual Studio, WinDbg, DebugDiag) callstacks를 추출하고 미니 덤프에서 진단까지 사용할 수있는 몇 가지 도구가 있습니다. 그렇게하기위한 간단한 "사용법"가이드를 작성했습니다 (which you can find here).

실제 함수 호출 이름과 위치가 아닌 주소 만 표시되는 경우 사용중인 도구에 대해 your symbol path is not set up correctly이거나 응용 프로그램의 .pdb 파일이 누락 된 것일 수 있습니다 (그리고/또는 심볼 서버를 설정하지 않았습니다.)