Nie chcę odciągać uwagi od pytania "ostatni czas dostępu", ale mogą istnieć inne sposoby na przyspieszenie kompilacji. Nie znając kontekstu i konfiguracji projektu, trudno powiedzieć, co może być powolne, ale mogą istnieć pewne rzeczy, które mogą pomóc:
Twórz kompilacje "uber". Oznacza to, że utworzenie pojedynczego pliku uber.cpp kompilacji, który zawiera kilka wierszy jak
#include "file1.cpp"
#include "file2.cpp"
Możesz mieć kłopoty ze sprzecznymi statycznych nazw zmiennych, ale te są na ogół łatwe do uporządkowania.Wstępna konfiguracja to rodzaj bólu, ale czasy budowy mogą znacznie wzrosnąć. Dla nas największą wadą jest to, że w studio programistycznym nie można kliknąć prawym przyciskiem myszy pliku i powiedzieć "kompiluj", jeśli ten plik jest częścią kompilacji uber. To nie jest wielka sprawa. Mamy osobne konfiguracje kompilacji dla kompilacji "uber", które kompilują pliki uber, ale wykluczają pojedyncze pliki cpp z procesu budowania. Jeśli potrzebujesz więcej informacji, zostaw komentarz i dam ci to. Ponadto, optymalizator ma tendencję do wykonywania nieco lepszej pracy z kompilacjami uber.
Co więcej, czy masz dużą liczbę plików włączających lub wiele depenementów między plikami dołączanymi? Jeśli tak, to drastycznie spowolni czas budowy.
Czy używasz prekompilowanych nagłówków? Jeśli nie, możesz przyjrzeć się temu jako rozwiązaniu, które również pomoże.
Powolne czasy kompilacji to zwykle śledzone do wielu plików we/wy. Jest to zdecydowanie największa oszczędność czasu w budowaniu - po prostu otwieranie, czytanie i analizowanie wszystkich plików. Jeśli zmniejszysz operacje wejścia/wyjścia pliku, poprawisz czas kompilacji.
W każdym razie, przykro mi lekko lekceważyć temat, ale sugestia pod ręką, aby zmienić sposób ustawiania ostatniego czasu dostępu do pliku, wydaje się być rozwiązaniem "młotowiernika".
Interesujące! Oczekuję jednak, że prawdziwy zysk nastąpi po dotknięciu pojedynczego pliku zawierającego wiele załączników, a następnie przebudowaniu: sprawdzanie zależności powinno zacząć szukać całej masy pliku, co może spowodować zapis ostatniego czasu dostępu. Może ... –