2013-01-10 24 views
5

Czy istnieje sposób użycia ccache z XCode 4, aby poprawić czas kompilacji C++?Używanie ccache z XCode 4

Używanie zmiennych środowiskowych Ustawiłem CC i CXX na ccache, ale kompilacja się nie powiedzie, ponieważ ccache nie rozpoznaje niektórych parametrów wyjściowych XCode 4.

+0

Dlaczego chcesz używać 'ccache' w pierwszej kolejności? Xcode domyślnie działa tak, jak robi to 'ccache'; spowoduje to jedynie ponowną kompilację plików, które uległy zmianie od czasu ostatniej kompilacji (chyba że oczyściłeś projekt przed kompilacją lub zmianą ustawienia kompilacji). Tak więc wątpię, byś zauważył jakiekolwiek przyspieszenie używając 'ccache' w Xcode. – Mecki

+2

@Mecki, xcode nie buforuje budowanego produktu. Na przykład. jeśli przełączasz się między gałęziami, xcode ponownie skompiluje wiele plików, które zostały już wcześniej skompilowane. W tym przypadku ccache znacznie zwiększy czas kompilacji. – timblechmann

Odpowiedz

0

This answer pokazuje technikę, gdzie można ccache być używany z Xcode przez ustawienie zmiennych zdefiniowanych przez użytkownika na CC i CXX w projekcie Xcode. Ta konkretna odpowiedź polegała na użyciu CMake do tworzenia plików projektu Xcode, ale ta sama zasada dotyczy ręcznie tworzonych projektów Xcode. Zmienne CC i CXX działają jak przesłonięcia do używanego kompilatora, więc przekazują je do skryptu opakowującego, który wywołuje cache z kompilatorem, który ma osiągnąć pożądaną funkcjonalność. Zauważ, że testowałem go tylko z Xcode 7, ale spodziewałbym się, że wcześniejsze wersje też będą działać. This article Peter Steinberger obejmuje również zasadniczo funkcjonalność chcesz bez użycia CMake, ale wykorzystuje tę samą technikę ustawiania CC i CXX zmiennych projektu Xcode.