|
이제 막 해봤는데요... 잘 됩니다..
어떻게 했냐면요..
먼저...
시스템에서 제공하는 헤더화일들... 그러니깐 #include < **** . h> 이렇게 되는것들만 모두 복사해서 옮겨봤습니다.
그랬더니 빨리 컴파일 되더군요.
그 다음엔,. 컴퍼넌트를 사용할 때 생기는 헤더화일들.. #include " ****.hpp" 등 ..이렇게 생긴것들을..
PreHeader.h로 옮겨보았는데..
어떤 컴퍼넌트의 헤더화일이냐에 따라서 빨리 컴파일 되는가..아니면 첨부터 다 컴파일 해버리냐..차이가 생기네요..쩝,.
저 같은 경우엔 VrControls.hpp 등 이쪽 계통 컴퍼넌트들을 PreHeader.h에 포함시키면..
컴파일 속도가 예전과 차이가 없어 버립니다.
#include "Vr****.hpp" 들만 PreHeader.h에서 모두 뺐더니 무쟈게 빨리 되네요..~..
그리고 Warning도 안생깁니다..^^.
한번 해보세요~
smleelms 님이 쓰신 글 :
: 음.. 말씀하신데로 직접 작성한 헤더파일은 포함시키지를 않았습니다.
: 고정적이고 불변적인 시스템의 헤더만 포함시켰구요....
: (다 BCB에서 제공하는 h, hpp 파일과 VCL의 헤더파일만 include 시켰습니다.)
:
: 그래도 컴파일시간은 처음이랑 별 차이가 없더군요..
:
: 그래서 내린 결론이
: [C++ Warning] Dialogs.hpp(437): W8058 Cannot create pre-compiled header: initialized data in header
: 이넘땜시 안되는 관계로 더불어, 모든 폼파일들이 메인폼을 참조하고 있는 관계로
: 결국 모든 파일들을 재컴파일하는구나... 하면서 꼬리를 내렸습니다.
:
: 혹시 더 도움을 주실만한 내용이 있으실런지요.. ^^;;
:
: P.S 이후 그냥 램디스크를 100메가 잡아놓고 거기서 노는데.. 이것도 별로 신통치 않더군요..
:
: 김태선 님이 쓰신 글 :
: : 프리컴파일을 한 곳에 모아 놓는 방식에 큰 문제는 없습니다.
: : 저도 그렇게 쓰고 있습니다.
: : 저는 폼이 30여개 소스만 몇만줄 이상되어도 컴파일은 불과 몇초만에 끝납니다.
: :
: : 프리컴파일 할 파일, 가령 preheader.h 를 만드실때 여기에 모든 헤더파일을 다 모으지 마세요.
: : 직접 작성한 헤더파일은 여기에 포함시키지 마시고,
: : 고정적이고 불변적인 시스템의 헤더만 포함시키세요.
: : 직접 작성한 헤더는 각각의 소스에서 별도로 인쿠르드하는 것이 좋습니다.
: : 물론 자동으로 들어가는 폼의 헤더파일의 include 된 항목도 고치지 말고 그대로 두시고요.
: : 이렇게 하는 것이 제일 빠르고 편리합니다.
: : 저도 처음에는 모든 헤더를 몰아서 넣다가, 이렇게 바꾸니 컴파일에 시간걸리는 일이 없더군요.
: : 자신이 작성한 헤더파일은 긴 경우가 별로 없으니 실제 컴파일 시간을 잡아 먹는 일은 드뭅니다.
: : 부언을 안해도 잘 이해가 되리라고 생각됩니다.
: :
: : 그럼..
|