C++ - stdafx.h 파일을 찾지 못한다는 에러가 나올 때

VC++에서 프로그래밍을 할 때 컴파일 속도를 올리기 위해 대부분 ‘프리 헤더’ 파일을 사용한다.
보통 자신이 만든 소스파일을 사용할 때 문제가 없다가 외부 파일을 가져와서 사용하는 경우 또는 비슷한 행동을 하는 소스 파일 마다 별도의 디렉토리에 들어가 있는 경우 (예 DB 관련 소스파일은 DB, 네트워크 관련 소스파일은 Network라는 디렉토리에 보관) 분명 stdafx.h 파일이 있는데도 찾지 못한다는 에러가 나오면서 컴파일 되지 않는 경우가 있다.

프로젝트에서

  • a.h
  • a.cpp
  • b.h
  • b.cpp
  • stdafx.h
  • stdafx.cpp

가 있다면 stdafx.cpp만 속성에서 ‘미리 정의된 헤드파일 만들기’로 설정하고 이것 이외의 파일은 속성에서 ‘미리 정의된 헤드파일 사용’으로 설정을 하면 컴파일 된다.


이 글은 2020-08-11에 작성되었습니다.