Отключить предупреждения в XCode из фреймворков - PullRequest
58 голосов
/ 03 ноября 2011

Я импортировал проект three20 в свой проект, и когда я обновился до Xcode 4.2 с iOS 5, в проекте появилась куча предупреждений.

Мне плевать на них, но они издают много шума, и сейчас легко пропустить любые реальные предупреждения в моем проекте. Есть ли способ отключить предупреждения для этих конкретных библиотек?

Ответы [ 3 ]

146 голосов
/ 20 декабря 2011
  1. Если сторонние библиотеки добавляются в качестве отдельной цели, вы можете проверить Inhibit all warnings для этой конкретной цели, чтобы отключить все предупреждения.

  2. Если ваша библиотека добавлена ​​в виде простых исходных файлов к вашей текущей цели, вы можете установить флаг компилятора -w для отдельных источников, чтобы отключить все предупреждения в них.Вы должны перейти в меню Build phases вашей целевой конфигурации и установить этот флаг для каждого исходного файла в разделе Compile Sources, дважды щелкнув по концу каждого файла, введя флаг -w.enter image description here

11 голосов
/ 21 декабря 2017

Если вы используете pods, вы можете добавить это в ваш 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
3 голосов
/ 12 октября 2018

Если предупреждения приходят из включенных заголовочных файлов библиотеки или фреймворка, вы можете заключить в них такие выражения, как это:

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wnullability-completeness"
#import <FBSDKCoreKit/FBSDKCoreKit.h>
#import <FBSDKShareKit/FBSDKShareKit.h>
#pragma clang diagnostic pop

Поставьте флажок предупреждения во второй строке выше.Вы можете посмотреть флаг предупреждения с помощью предупреждающего сообщения на ClangWarnings.com

...