2011-04-06 26 views
6

Tôi có một dự án ứng dụng Xcode với các cấu hình có sẵn "Foo", "Bar" và "Baz". Dự án này phụ thuộc vào một thư viện tĩnh có cấu hình "Debug" và "Release".Dự án Xcode4 với tên cấu hình tùy chỉnh và thư viện phụ thuộc Gỡ lỗi/Phát hành?

Xcode4 đang tạo sản phẩm từ dự án ứng dụng thành thư mục "Foo-iphoneos" và các sản phẩm từ dự án thư viện vào thư mục "Release-iphoneos".

Thực tiễn tốt nhất để có hai dự án này chia sẻ cùng một thư mục sản phẩm xây dựng là gì?

Trả lời

0

Một giải pháp là nếu các dự án phụ thuộc của bạn có cùng tên cấu hình với dự án chính (ví dụ: Foo, Bar, Baz), thì Xcode sẽ khớp với chúng và xây dựng bằng cùng một cấu hình.

Vì vậy, nếu bạn muốn xây dựng bản sửa lỗi thay vì xây dựng bản phát hành, bạn có thể sao chép cấu hình Gỡ lỗi và gọi nó là Foo. Nếu bạn không thực sự cần cả hai, bạn có thể đổi tên cấu hình thay vì sao chép cấu hình, nhưng với các tên ví dụ như Foo, tôi không chắc chắn điều gì sẽ có ý nghĩa cho tình huống của bạn.

Tuy nhiên, tiêu đề đề cập đến Xcode 4. Kỹ thuật được mô tả ở trên là những gì tôi đã sử dụng để thực hiện trong Xcode 3; Tôi đã không tìm ra cách để quản lý các cấu hình này trong Xcode 4. Tôi đang cố gắng tìm ra điều đó ngay bây giờ.

Cập nhật: Để quản lý cấu hình trong Xcode 4, bạn có thể nhấp vào tên dự án hoặc dự án phụ thuộc của bạn ở đầu trình điều hướng dự án (nơi tất cả tệp/thư mục của bạn được liệt kê ở bên trái). Trong cửa sổ chính, chọn Info (tab khác là Build Settings). Sau đó, bạn sẽ thấy phần Cấu hình nơi bạn có thể thêm/xóa/đổi tên cấu hình của mình.

0

Tôi nhận thấy rằng nếu cấu hình mục tiêu và phụ thuộc của bạn không khớp thì phụ thuộc sẽ được xây dựng với cấu hình Phát hành.

Tôi không thể tìm cách tùy chỉnh điều đó.

1

Bạn có thể thêm đường dẫn sau để đường dẫn tìm kiếm thư viện cho bất kỳ cấu hình không chuẩn:

"$(BUILT_PRODUCTS_DIR)/../Release-$(PLATFORM_NAME)" 

này làm việc cho tôi với xcode 4.6. Tôi không chắc chắn nếu có một cách để kiểm soát cấu hình sẽ được xây dựng cho các dự án anh chị em phụ thuộc, nhưng cho mục đích của tôi Phát hành là những gì tôi muốn.

Các vấn đề liên quan