문제

Currenty에서 작업중인 레거시 앱은 빌드하는 데 ~ 2 시간이 걸립니다. 이 프로젝트에는 150 개 정도의 MANIGATE C ++ 및 다른 30 C#.NET 2.0이있는 약 170 개의 프로젝트가 있습니다.

이와 같은 건축 시간을 개선하는 방법에 대한 제안은 무엇입니까?

도움이 되었습니까?

해결책

C ++ 프로젝트에 중점을 둡니다. 건물의 가장 큰 시간 배수구가 거의 보장됩니다.

C ++ 빌드 시간을 줄이는 데 대한 몇 가지 팁 :

  • C ++ 프로젝트에 필요한 헤더 만 포함되어 있는지 확인하십시오!
  • 다른 헤더를 포함하는 대신 헤더에서 가능할 때마다 전달 선언을 사용하십시오.
  • /MP 스위치를 사용하여 가능하면 병렬로 빌드하십시오.
  • 추상화를 효과적으로 사용하십시오
  • 인라인 함수 사용에 절약해야합니다. 컴파일 타임에 더 많은 비용이 들기 때문입니다.
  • 의존성을 올바르게 얻으려면 더 자주 구축하지 않습니다.
  • 사전 컴파일 된 헤더를 적절하게 사용하십시오

그 외에도, 2 시간 빌드 시간을 말하고 있다면 종종 단순하고 저렴한 (큰 그림으로) 솔루션도 있습니다.

  • 계산 시간을 줄이기 위해 하드웨어를 업그레이드하십시오

다른 팁

설치하는 경우 Incredibuild 빌드 해야하는 모든 기계에서 모든 기계에 빌드 프로세스를 배포합니다. 문제에 하드웨어를 실제로 던지려면 Incredibuild 클라이언트로만 적용되는 몇 가지 전용 기계를 설정할 수 있습니다.

다른 규모로 모든 프로젝트에 미리 컴파일 된 헤더가 올바르게 구성되었는지 확인하십시오.

분산 빌드 시스템을 시도 할 수 있습니다. http://www.xoreax.com/visual_studio.htm

당신은 같은 도구를 사용할 수 있습니다 보풀 중복성이 있는지 확인하려면 C ++ 프로젝트에 파일이 포함되어 있는지 확인하십시오.

이 주제에 대한 훌륭한 기사도 있습니다. 내부에서 게임.

프로젝트의 관련 서브 세트 만 포함하는 프로젝트에 대한 여러 솔루션을 작성하고 릴리스 등의 슈퍼 솔루션 하나를 남겨 두십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top