릴리즈 모드로 build 된 프로그램의 디버깅
Tip & Tech/VS 프로젝트 설정 / 2010. 10. 14. 17:40
원문 : http://support.microsoft.com/default.aspx?scid=kb%3Bko%3BKR601474 )
이 문서는 이전에 다음 ID로 출판되었음: KR601474
요약
어플리케이션을 릴리즈 모드로 Build 할 때 디버깅 정보를 남기어서 VC++ Debugging Tool에서 디버깅을 가능하게 합니다. 이 방법을 사용하는 경우, 실제 릴리즈 실행 파일은 거의 영향 받지 않으면서, Debugger 에서 Break Pointer를 잡거나, Trace를 가능하게 하므로, Release mode에서만 발생하는 Bug를 추적할 때 용이하게 사용할 수 있습니다.
추가 정보
이 방법을 사용하게 되면 _DEBUG free define으로 포함되는 디버깅 매크로는 포함되지 않으나, Source code안으로 Step in 가능하게 하는 디버깅 정보들은 OBJ와 PDB file에 남게 됩니다. 이를 이용하게 되면 VC++ IDE 환경에서 source level 까지의 step in이 가능해 집니다.
다음은 VC++ 6.0의 프로젝트에서 Debugging Information를 Enable하는 방법입니다.
다음은 VC++ 6.0의 프로젝트에서 Debugging Information를 Enable하는 방법입니다.
*********************************************************************************************
자자.. 위에꺼는 2000년도에 마소에서 나온 문서이다. 2000년도라면 VC++ 6.0을 사용하던 시기..
지금은 몇 년도? 2007년도.. VC++은 얼마? 2005.. 흠.. 상당한 시간이 흐르고, VC++도 엄청난 변화를
격었기에 위와같이 설정을 해주면 컴파일이 안 된다. 그래서 2005에 맞게 수정하겠다. ^^
위 그림과 같이 "메뉴 -> 프로젝트 -> 속성 -> 구성 속성 -> C/C++ -> 일반" 으로 이동을 한다. 그리고 맨위 왼쪽 구성은 Release로 한다.
그리고 디버깅 정보 형식은 "편집하며 계속하기를 위한 프로그램 데이터베이스(/ZI)" 로 변경한다.
그리고 "메뉴 -> 프로젝트 -> 속성 -> 구성 속성 -> C/C++ -> 최적화"로 가서 "속도 최대화(/O2)"에서 "사용 안 함"으로 설정.
그리고 "메뉴 -> 프로젝트 -> 속성 -> 구성 속성 -> C/C++ -> 전체 프로그램 최적화"로 가서 "링크 타임 코드 생성 사용(/GL)"를"사용 안 함"으로 설정한다.
저렇게 설정하고 다시 컴파일 한 후 릴리즈 모드로 디버깅을 하거나 덤프 파일을 읽으면 일반 디버깅과 똑같이 파일 정보를 읽을 수 있다.
반응형
'Tip & Tech > VS 프로젝트 설정' 카테고리의 다른 글
(에러) C++ 프로젝트에서 Intellisense문제 해결 항목을 참조하십시오. (0) | 2011.01.06 |
---|---|
Visual Studio 도구상자 아이콘 깨짐현상 해결법(VS IDE 리셋) (2) | 2010.11.25 |
디버깅을 위한 컴파일러 옵션 조정과 디버깅 활용. (0) | 2010.10.14 |
브레이크 포인트가 비활성화 될때 - '고급편 2' (0) | 2010.09.06 |
브레이크 포인트가 비활성화 될때 - '고급편' (0) | 2010.09.06 |