Właściwości projektu Clang (Android C++)
Właściwości | opis | Opcje wyboru |
---|---|---|
Dodatkowe katalogi dołączania | Określa co najmniej jeden katalog do dodania do ścieżki dołączania; rozdzielać średnikami, jeśli więcej niż jeden. (-Ścieżka I). | |
Format informacji debugowania | Określa typ informacji debugowania generowanych przez kompilator. | Brak — nie generuje żadnych informacji debugowania, więc kompilacja może być szybsza. Pełne informacje o debugowaniu (DWARF2) — generowanie informacji debugowania DWARF2. Informacje o numerze wiersza — generuj tylko informacje o numerze wiersza. |
Nazwa pliku obiektu | Określa nazwę, aby zastąpić domyślną nazwę pliku obiektu; może być nazwą pliku lub katalogu. (/Nazwa fo). | |
Poziom ostrzeżenia | Wybierz, jak bardzo chcesz, aby kompilator dotyczył błędów kodu. Inne flagi należy dodać bezpośrednio do opcji dodatkowych. (/w, /Weverything). | Wyłącz wszystkie ostrzeżenia — wyłącza wszystkie ostrzeżenia kompilatora. EnableAllWarnings — włącza wszystkie ostrzeżenia, w tym wszystkie wyłączone domyślnie. |
Traktuj ostrzeżenia jako błędy | Traktuje wszystkie ostrzeżenia kompilatora jako błędy. W przypadku nowego projektu najlepiej użyć /WX we wszystkich kompilacjach; rozwiązanie wszystkich ostrzeżeń zapewni najmniejsze możliwe trudne do znalezienia wady kodu. | |
Włączanie trybu pełnej | Pokaż polecenia do uruchamiania i używania pełnych danych wyjściowych. | |
Optymalizacja | Określa poziom optymalizacji aplikacji. | Niestandardowe — optymalizacja niestandardowa. Wyłączone — wyłącz optymalizację. Minimalizuj rozmiar — optymalizuj pod kątem rozmiaru. Maksymalizuj szybkość — optymalizuj pod kątem szybkości. Pełna optymalizacja — kosztowne optymalizacje. |
Ścisłe aliasowanie | Przyjmij najściślejsze reguły aliasowania. Obiekt jednego typu nigdy nie zakłada się, że jest pod tym samym adresem co obiekt innego typu. | |
Pomijanie wskaźnika ramki | Pomija tworzenie wskaźników ramek na stosie wywołań. | |
Włączanie wyjątków języka C++ | Określa model obsługi wyjątków, który ma być używany przez kompilator. | Nie — wyłącz obsługę wyjątków. Tak — włącz obsługę wyjątków. Odwij tabele — generuje wymagane dane statyczne, ale nie ma wpływu na wygenerowany kod. |
Włączanie łączenia na poziomie funkcji | Umożliwia kompilatorowi spakowanie poszczególnych funkcji w postaci spakowanych funkcji (COMDATs). Wymagane do edycji i kontynuowania pracy. (ffunction-sections). | |
Włączanie łączenia na poziomie danych | Umożliwia optymalizacje konsolidatora w celu usunięcia nieużywanych danych przez emitowanie każdego elementu danych w oddzielnej sekcji. | |
Włączanie zaawansowanej karty SIMD(Neon) | Umożliwia generowanie kodu dla sprzętu zmiennoprzecinkowego NEON. Dotyczy tylko architektury usługi ARM. | |
Zmiennoprzecinkowa ABI | Opcja wyboru, aby wybrać zmiennoprzecinkowe ABI. | Soft — "Soft" powoduje, że kompilator generuje dane wyjściowe zawierające wywołania biblioteki dla operacji zmiennoprzecinkowych. SoftFP — "SoftFP" umożliwia generowanie kodu przy użyciu sprzętowych instrukcji zmiennoprzecinkowych, ale nadal używa konwencji wywołań zmiennoprzecinkowych. Hard — "Hard " umożliwia generowanie instrukcji zmiennoprzecinkowych i używa konwencji wywoływania specyficznych dla FPU. |
Kontrola zabezpieczeń | Sprawdzanie zabezpieczeń pomaga wykrywać przepełnienia buforu stosu, typowy atak na zabezpieczenia programu. (fstack-protector). | Wyłącz sprawdzanie zabezpieczeń — wyłącz sprawdzanie zabezpieczeń. Włącz sprawdzanie zabezpieczeń — włącz sprawdzanie zabezpieczeń. (fstack-protector) |
Pozycja, niezależny kod | Generowanie kodu niezależnego od pozycji () do użycia w bibliotece udostępnionej. | |
Używanie krótkich wyliczenie | Typ wyliczenia używa tylko tyle bajtów wymaganych przez zestaw danych wejściowych możliwych wartości. | |
Włączanie informacji o typie czasu wykonywania | Dodaje kod do sprawdzania typów obiektów C++ w czasie wykonywania (informacje o typie środowiska uruchomieniowego). (frtti, fno-rtti) | |
C Language Standard | Określa standard języka C. | Wartość domyślna C89 — C89 Language Standard. C99 - C99 Language Standard. C11 — C11 Language Standard. C99 (dialekt GNU) — Standard języka C99 (dialekt GNU). C11 (dialekt GNU) — standard języka C11 (dialekt GNU). |
C++ Language Standard | Określa standard języka C++. | Wartość domyślna C++03 — C++03 Language Standard. C++11 — C++11 Language Standard. C++14 — C++14 Language Standard. C++03 (dialekt GNU) — standard języka C++03 (dialekt GNU). C++11 (dialekt GNU) — standard języka C++11 (dialekt GNU). C++14 (dialekt GNU) — standard języka C++14 (dialekt GNU). |
Definicje preprocesora | Definiuje symbole przetwarzania wstępnego dla pliku źródłowego. (-D) | |
Niezdefiniuj definicje preprocesora | Określa co najmniej jedną niezdefiniowaną preprocesor. (-U makro) | |
Niezdefiniuj wszystkie definicje preprocesora | Usuń definicję wszystkich wcześniej zdefiniowanych wartości preprocesora. (-undef) | |
Pokaż elementy dołączane | Generuje listę plików dołączanych z danymi wyjściowymi kompilatora. (-H) | |
Prekompilowany nagłówek | Utwórz/użyj prekompilowanego nagłówka: umożliwia tworzenie lub używanie prekompilowanego nagłówka podczas kompilacji. | Użyj — użyj prekompilowanego nagłówka. Nie używasz prekompilowanych nagłówków — nie używa prekompilowanego nagłówka. |
Wstępnie skompilowany plik nagłówka | Określa nazwę pliku nagłówka do użycia dla wstępnie skompilowanego pliku nagłówka. Ten plik jest również dodawany do pliku "Wymuszone dołączanie plików" podczas kompilacji | |
Prekompilowany katalog plików wyjściowych nagłówka | Określa katalog dla wygenerowanego wstępnie skompilowanego nagłówka. Ten katalog jest również dodawany do katalogu "Dodatkowe katalogi dołączania" podczas kompilacji | |
Kompiluj prekompilowany nagłówek jako | Wybierz opcję języka kompilowania dla wstępnie skompilowanego pliku nagłówka (-x c-header, -x c++-header). | Kompiluj jako kod C — kompiluj jako kod C. Skompiluj jako kod C++ — skompiluj jako kod C++. |
Kompiluj jako | Wybierz opcję kompilowania języka dla .c plików i .cpp . Wartość domyślna zostanie wykryta na .c podstawie rozszerzenia lub ..cpp (-x c, -x c++) |
Ustawienie domyślne — ustawienie domyślne . Kompiluj jako kod C — kompiluj jako kod C. Skompiluj jako kod C++ — skompiluj jako kod C++. |
Wymuszone dołączanie plików | co najmniej jeden wymuszony plik dołączania. (-include name) | |
Kompilacja z wieloma procesorami | Kompilacja z wieloma procesorami. | |
Opcje dodatkowe | Dodatkowe opcje. |