Tip & Tech/VS 프로젝트 설정

[펌] 네이티브 코드 선행 디버깅에 도움을 주는 컴파일러와 링커 옵션

blueasa 2011. 9. 11. 18:43

컴파일러 옵션


/RTC (런타임 오류 검사)

/RTCc : C/C++ > 코드 생성 > 작은 형식 검사 (값을 작은 데이터 형식으로 변환할 때 데이터 손실이 있는지 확인)

/RTCu : C/C++ > 코드 생성 > 기본 런타임 검사 (초기화되지 않은 변수 참조를 추적)


/GS (버퍼 보안 검사)

C/C++ > 코드 생성 > 버퍼 보안 검사

Debug Mode에서도 사용을 하기를 권장한다.


/O1 (크기 최소화)

C/C++ > 최적화 > 최적화

기본적으로 Release모드에서 /O2 (속도 최대화) 를 사용한다.

그러나, MS는 모든 상업용 프로그램을 /O1 을 사용한다.


/showIncludes

C/C++ > 고급 > 포함 표시

어떤 파일을 포함하고 그 파일의 위치를 확인 할 수 있다.


링커 옵션


/MAP

/MAPINFO:LINES

/MAPINFO:EXPORTS

링커 > 디버깅

항상 사용을 하도록 하자.


/OPT:NOWIN98

링커 > 최적화 > Win98에 맞게 최적화

Win98, Me 를 지원하지 않는다면 사용하자. 응용프로그램의 크기 감소 효과.


/Release

링커 > 고급 > 체크섬 설정

이름과는 다르게 이 스위치는 PE헤더에 체크섬 값을 설정한다.

디버그 모드에서는 절대 사용하지 말자. 일반 사용자-모드 응용 프로그램은 이 값이 필요치 않다.


반응형