Xcode'da, belirli kaynak dosyalardaki tüm uyarıları nasıl bastırırsınız?


137

Uygulamamda bazı uyarıları tetikleyen 3. taraf kodu kullanıyorum. Onları inceledim ve güvenle göz ardı edilebilirler.

Şimdi bir şekilde bir dosyayı "işaretlemek" istiyorum, bu nedenle Xcode bu dosyadaki kod için herhangi bir uyarı göstermez.

Bunu nasıl yapmalıyım?

Yanıtlar:


277

Hedefinizi seçin ve Derleme Aşamalarını gösterin. Ardından, arama kutusuna dosyanın adını girin; dosyayı Derleme Kaynakları aşamasında listelendiğini görmelisiniz. Bu dosya için Derleyici Bayrakları sütununu çift tıklayın ve o dosya -wiçin tüm uyarıları kapatmak üzere girin .


9
Hmm, -wtüm uyarıları kapatmayı bekliyordum , ama belki de yeni derleyici buna dikkat etmiyor. Bu durumda, bireysel uyarıları kapatın. Söz konusu uyarıyı Oluşturma Ayarları'nda bulun ve Yardımcı Programlar görünümünde Hızlı Yardım'ı gösterin. -Wname-of-warningSözdizimi içeren bir açıklama görmelisiniz . Adın başına "hayır-" yazın ve bunu Derleyici Bayrakları'nda belirtin. Örnek: -Wunused-parameterbelirtmek için-Wno-unused-parameter
Jon Reid

14
Bütün bunların derleyiciye bağlı olduğu ortaya çıktı. Yani, LLVM GCC derleyicisini kullanan bir projede -while yapar ve düz GCC derleyicisini kullanan başka bir projede -Wno-name-of-warninggitmek için tek yol vardır.
Bobrovsky

6
İpucu için teşekkürler, benim için de çalıştı ( -wve LLVM). Değiştirmek için asılmadığınız üçüncü taraf dosyaları eklediğinizde gerçekten kullanışlıdır.
user826955

1
@Zammbi Kod otomatik olarak oluşturulduğundan, uyarısız kod oluşturmak için düzeltin. Bunu yapamazsanız, derleyici bayrağını ayarlamak için Xcode projesini otomatik olarak ekleyin.
Jon Reid

11
Xcode 7.0 ve Apple LLVM 7.0
King-Wizard

6

Sol gezginde Proje'yi seçin ve hedef oluşturma aşamasına gidin ve hedef dosyanın Derleme Aşamasında Put -w'yi seçin. Tüm derleyici uyarılarını gizleyecektir resim açıklamasını buraya girin


17
Xcode 7.0 ve Apple LLVM 7.0
King-Wizard

2
clang derleyici bayraklarını yabancı bir derleyiciye geçirmek işe yaramaz. quelle sürpriz ... google hızlı derleyici için uyarı bayrağı ve bunun yerine ekleyin.
jheriko

4

Bu, Xcode 10.2+ ve Swift 5 için çalışır

Manuel düzeltme:

Ekle -w -Xanalyzer -analyzer-disable-all-checkssorunlu dosyaya Xcode> Proje> Hedefler> Derleme Kaynakları> uyarıları kapatmak istediğiniz Çift dosyasını tıklayın.

Cocoapods Düzeltme:

Sorunlu bir kapsülden gelen uyarıları bastırmaya çalışıyorsanız, tüm dosyalarınızı pod dosyanızdakiinhibit_warnings bayrakla olan bağımlılıktan otomatik olarak kaldırabilirsiniz :

pod 'Kingfisher', '~> 4.6', :inhibit_warnings => true

resim açıklamasını buraya girin


Cocoapods fix bir tedavi çalıştı, teşekkürler!
adougies
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.