2011-11-03 29 views
54

Tôi đã nhập dự án ba20 vào dự án của mình và khi tôi nâng cấp lên Xcode 4.2 với iOS 5, một loạt các cảnh báo đã xuất hiện trong dự án.Tắt cảnh báo trong Xcode từ các khung

Tôi không quan tâm đến chúng, nhưng chúng tạo ra nhiều tiếng ồn và dễ dàng bỏ lỡ bất kỳ cảnh báo thực sự nào trong dự án của tôi ngay bây giờ. Có cách nào để vô hiệu cảnh báo cho những thư viện cụ thể đó không?

Trả lời

138
  1. Nếu thư viện bên thứ ba của bạn được thêm làm mục tiêu riêng biệt, bạn có thể kiểm tra Inhibit all warnings cho mục tiêu cụ thể đó để tắt tất cả cảnh báo.

  2. Nếu thư viện của bạn được thêm dưới dạng tệp nguồn đơn giản vào mục tiêu hiện tại của bạn, bạn có thể đặt cờ biên dịch -w cho từng nguồn để tắt tất cả cảnh báo trong đó. Bạn phải đi tới trình đơn Build phases của cấu hình mục tiêu và đặt cờ này cho từng tệp nguồn trong mục Compile Sources bằng cách nhấp đúp vào mỗi đầu tệp đang nhập cờ -w. enter image description here

+12

này là hoàn toàn cách tiếp cận đúng. Không sửa đổi mã của bên thứ ba và không tắt cảnh báo trên toàn cầu. Một cách tiếp cận tương tự khác là di chuyển mã của bên thứ ba vào một dự án riêng biệt và xây dựng một lib tĩnh. Bằng cách đó, nó có thể có các cài đặt xây dựng riêng. –

+1

Thỉnh thoảng, tôi vấp ngã vào một câu trả lời mà tôi ước mình có thể upvote ít nhất một vài lần. Đây là một trong những thời điểm. –

+0

[Bài viết này] (http://adoptioncurve.net/archives/2013/02/selectively-disabling-warnings-with-xcode-compiler-flags/) cung cấp một số chi tiết bổ sung về các cờ tệp riêng lẻ. Họ đề xuất sử dụng '-w -Xanalyzer -analyzer-disable-checker' – KPM

3

Nếu bạn đang sử dụng vỏ, bạn có thể thêm video này vào podfile của bạn để ngăn chặn cảnh báo logging:

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 
Các vấn đề liên quan