2011-11-03 16 views
54

Zaimportowałem projekt three20 do mojego projektu, a po uaktualnieniu do Xcode 4.2 z iOS 5 pojawiło się kilka ostrzeżeń w projekcie.Wyłącz ostrzeżenia w Xcode ze struktur

Nie obchodzi mnie to, ale robią dużo hałasu i łatwo przegapić jakiekolwiek prawdziwe ostrzeżenia w moim projekcie. Czy istnieje sposób wyłączenia ostrzeżeń dla tych konkretnych bibliotek?

Odpowiedz

138
  1. Jeśli biblioteki innych firm są dodawane jako odrębny cel, można sprawdzić Inhibit all warnings dla tego konkretnego celu, aby włączyć wszystkie ostrzeżenia off.

  2. Jeśli biblioteka jest dodawana jako plik źródłowy z bieżącym celem, można ustawić flagę kompilatora -w dla poszczególnych źródeł, aby wyciszyć wszystkie ostrzeżenia w nich. Musisz przejść do menu Build phases swojej docelowej konfiguracji i ustawić tę flagę dla każdego pliku źródłowego w sekcji Compile Sources, klikając dwukrotnie każdy koniec pliku, wprowadzając flagę -w. enter image description here

+12

To jest absolutnie prawidłowe podejście. Nie modyfikuj kodu strony trzeciej i nie wyłączaj ostrzeżeń na całym świecie. Inne podobne podejście polega na przeniesieniu kodu strony trzeciej do osobnego projektu i zbudowaniu statycznej biblioteki. W ten sposób może mieć własne ustawienia kompilacji. –

+1

Co jakiś czas mam na myśli odpowiedź, którą chciałbym zrobić kilka razy. To jeden z tych czasów. –

+0

[Ten artykuł] (http://adoptioncurve.net/archives/2013/02/selectively-disabling-warnings-with-xcode-compiler-flags/) podaje dodatkowe informacje na temat poszczególnych flag plików. Sugerują użycie '-w -Xanalyzer -analyzer-disable-checker' – KPM

3

Jeśli używasz strąków, można dodać do swojej podfile aby zapobiec rejestrowaniu ostrzeżenia:

post_install do |installer| 
    installer.pods_project.targets.each do |target| 
    target.build_configurations.each do |config| 
     config.build_settings['GCC_WARN_INHIBIT_ALL_WARNINGS'] = "YES" 
    end 
    end 
end 
Powiązane problemy