2011-11-03 71 views
54

我已經將three20項目導入到我的項目中,當我升級到iOS 5的Xcode 4.2時,項目中出現了一堆警告。從框架禁用Xcode中的警告

我不在乎它們,但它們會產生很多噪音,現在很容易錯過我的項目中的任何實際警告。有沒有辦法禁用這些特定庫的警告?

回答

138
  1. 如果您的第三方庫將作爲一個單獨的目標,你可以檢查Inhibit all warnings針對特定目標把所有的警告了。

  2. 如果您的庫作爲普通源文件添加到當前目標中,則可以設置-w編譯器標誌,以便各個源靜默其中的所有警告。你必須去你的目標配置的Build phases菜單,並通過雙擊每個文件末尾輸入-w標誌來爲Compile Sources節中的每個源文件設置該標誌。 enter image description here

+12

這絕對是正確的做法。不要修改第三方代碼,也不要全局關閉警告。另一種類似的方法是將第三方代碼移入單獨的項目並構建一個靜態庫。這樣它可以有自己的構建設置。 –

+1

每隔一段時間,我都會想出一個答案,我希望我能夠至少上幾次。這是其中的一次。 –

+0

[本文](http://adoptioncurve.net/archives/2013/02/selectively-disabling-warnings-with-xcode-compiler-flags/)給出了關於單個文件標誌的一些額外的細節。他們建議使用'-w -Xanalyzer -analyzer-disable-checker' – KPM

3

如果使用的是豆莢,您可以添加到您的podfile防止警告日誌:

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