2013-04-15 1 views
4

Eclipse/CDT를 사용하여 C++ 프로젝트에 미리 컴파일 된 헤더를 사용하는 방법을 찾고 있습니다. 물건은 명령 줄에서 실행할 때 작동하지만 Eclipse에 쉽게 통합 할 수있는 방법을 찾고 있습니다.Eclipse CDT - 프리 컴파일 된 헤더

의견이 있으십니까?!

답변

1

현재까지 Eclipse CDT는 프리 컴파일 된 헤더를 직접 지원하지 않습니다. 내 말은, 당신은 다음과 같은 옵션을 설정할 수 없다는 것입니다 : "이 머리글의 경우 컴파일하십시오." 이클립스 프로젝트의 외부 라이브러리 헤더에도 동일하게 적용됩니다.

아시다시피 컴파일러에서 다른 컴파일 단위에 사용하게하려면 헤더 컴파일에 대해 동일한 컴파일러 플래그를 설정해야합니다. (적어도 GCC의 경우).

그래서, 당신은 몇 가지 솔루션이 있습니다

  • 당신은에있는 기본 빌드 명령 교체 "-> C/C++ 빌드 -에 대한 속성을> 빌더 설정 -> 명령을 구축"수정하는 사용자 정의 스크립트 이클립스에 의해 생성 된 makefile은 make를 호출한다. 루비 솔루션은 here으로 제안되었습니다. 다중 컴파일 된 헤더를 사용할 수 없다는 점에 유의하십시오.
  • GCC 대신 ccache을 사용할 수 있습니다. 동일한 컴파일 작업이 다시 완료되면이를 감지하므로 미리 컴파일 된 헤더를 사용하는 것과 약간 다릅니다.

편집 :

는 루비 스크립트가 작동을 얻으려면, 당신이 당신의 헤더 파일과 같은 디렉토리 내에 적어도 하나 개의 .cpp 파일이 필요합니다. 그렇지 않으면 누락 된 파일 "subdir.mk"에 오류가 발생합니다.

0

또 다른 방법은 미리 컴파일 된 헤더를 만들기 위해 빌드 설정이 변경된 소스 파일 (예 : pch.cpp)을 만드는 것입니다. 미리 컴파일 된 헤더를 생성하기 위해 빌드에 포함 된 다음 최종 실행 파일을 빌드하기 위해 제외해야합니다. 헤더 파일이 변경되면 일시적으로 다시 포함시켜야합니다.

This website은 각 빌드 구성에 대해 서로 다른 미리 컴파일 된 헤더를 만드는 방법을 포함하여 자세한 내용을 제공합니다.