2012-12-27 21 views
5

Mam prawie 200 projektów w Visual Studio i trwa to zbyt długo, aby je wszystkie zbudować. Zauważam, że budowanie stdafx.cpp (prekompilowanych nagłówków) dla każdego projektu jest wolne. Używam tego samego nagłówka dla każdego projektu, więc dlaczego muszę go skompilować ~ 200 razy? Jak mogę go raz zbudować i podzielić się między projektami?Czy mogę dzielić skompilowany nagłówek pomiędzy projektami, aby skrócić czas kompilacji?

+5

PROSZĘ Głosuj: http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/4931119-allow-precompiled-headers-to-be-shared-between-pro –

Odpowiedz

3

To pytanie hasbeenaskedbefore, ale Visual Studio uległo zmianie.

W Visual Studio 2008 możliwe jest udostępnienie prekompilowanego nagłówka niektórym hackery. Wyznacz jeden projekt do budowy PCH i od niego zależą wszystkie inne projekty (zależności od projektu). Upewnij się, że masz tylko jeden plik stdafx.h i że każdy projekt może go zobaczyć z #include "stdafx.h" (Additional Include Directories). Ustaw każdy projekt klienta, aby korzystał z głównego pliku PCH (Precompiled Header File). Teraz użyj xcopy, aby skopiować pliki master .pdb i .idb do dla każdego katalogu wyjściowego klienta:. Będziesz musiał ustawić projekt główny, aby wyprowadzał pdb z inną nazwą (pliki wyjściowe). Zobacz linki powyżej, aby dowiedzieć się więcej.

W Visual Studio 2010 i Visual Studio 2012 nie ma znanego sposobu udostępniania plików PCH.

+2

Inni, w tym ja , udało się to uruchomić w Visual Studio 2010 i 2012 (zobacz drugi link w odpowiedzi Davida: http://stackoverflow.com/questions/645747/sharing-precompiled-headers-between-projects-in-visual-studio/ 4170902 # 4170902). –