2012-07-07 7 views
9

Tôi vừa mở lại một dự án đã được thiết lập để sử dụng Bộ sưu tập rác, và lần cuối tôi mở trong Xcode 3. Bây giờ mở lại nó trong Xcode 4.5, và tìm cách hiện đại hóa nó, tôi đang cố gắng bật ARC. Tuy nhiên, khi xây dựng, nó dẫn đến lỗi clang 1. Xem chi tiết hơn trong nhật ký Xcode, tôi thấy thông báo:Làm thế nào để tắt bộ sưu tập rác trong Xcode 4.5 và loại bỏ lỗi clang 1 khi bật ARC?

clang: error: không thể chỉ định cả '-fobjc-arc' và '-fobjc-gc- chỉ '

Ah, tôi cần phải tắt Bộ sưu tập rác, mà tôi đã sử dụng trước đây. Tuy nhiên, khi tìm kiếm cài đặt xây dựng cho từ 'rác' hoặc 'bộ sưu tập', tôi không thể tìm thấy cài đặt trong Xcode (sử dụng trường tìm kiếm trong Cài đặt xây dựng trong thông tin đích).

Trả lời

14

Có thể do bộ sưu tập rác hiện không được chấp nhận, cài đặt đã được chuyển thành cài đặt do người dùng xác định và đang sử dụng tên gcc 'GCC_ENABLE_OBJC_GC'. Đây là lý do tại sao nó sẽ không hiển thị khi thực hiện tìm kiếm 'rác' hoặc 'bộ sưu tập'. Thay vào đó, bạn phải tìm cài đặt đó ở cuối Cài đặt Xây dựng hoặc tìm kiếm chuỗi GCC_ENABLE_OBJC_GC bằng cách sử dụng trường tìm kiếm.

Điều này cần được thực hiện ở cấp dự án hoặc ở cấp mục tiêu.

+0

Cài đặt mức mục tiêu ghi đè cài đặt cấp dự án; vì vậy bạn không cần phải làm điều đó ở cả hai. Ether đặt nó ở cấp độ Dự án cho tất cả các mục tiêu hoặc trên các mục tiêu cụ thể nếu chúng chỉ là những mục tiêu cần được chỉ định. – geowar

+0

@geowar: điểm tốt. Tôi đã chỉnh sửa câu trả lời của mình cho phù hợp. – charles