2011-07-21 29 views
20

Tôi vừa cài đặt Lion và Xcode 4.1. Làm cách nào để thêm SDK cũ hơn để tôi có thể tạo và chạy trong phiên bản 4.1 hoặc 4.2 trong Trình mô phỏng iPhone/iPad? Xcode 4.1 chỉ đi kèm với SDK iOS 4.3.Thêm SDK iOS cũ hơn vào Xcode 4.1 trong Lion

Lion có một số loại SDK tối thiểu để xây dựng không?

Cảm ơn,

Trả lời

27

Thực tế nó có thể thêm SDK cũ hơn miễn là bạn vẫn có thể sử dụng phiên bản cũ hơn của Xcode với SDK cũ hơn. Đôi khi cũng hữu ích: khi bạn thực hiện việc này, bạn có thể tìm hiểu về các hằng số không được hỗ trợ và các phương thức mà bạn có thể sử dụng trong khi biên dịch thay vì trong thời gian chạy. Đây là cách để làm điều đó.

  1. Giữ phiên bản Xcode cũ hơn với SDK cũ hơn. Apple iOS Dev Center hiện liệt kê SDK 4.3 với bản tải xuống Xcode 3.2.6.

  2. Núi dmg và mở ra các gói thư mục ẩn trong dmg qua Terminal:

    mở/Volumes/Xcode \ và \ iOS \ SDK/gói/

  3. Nhấn đúp chuột vào tập tin pkg cho phiên bản SDK bạn muốn. Tôi đã tìm iPhoneSDK4_3.pkg nhưng, ngoài 4,3, tìm thấy các gói cũ như iPhoneSDK3_0.pkg. Vì vậy, có lẽ các phiên bản cũ hơn của SDK vẫn có thể được đóng gói với bản tải xuống của App Store nếu bạn biết nơi tìm thấy nó (tôi đã không).

  4. Let it cài đặt trong thư mục riêng của nó lựa chọn vì bạn sẽ không thể buộc nó để cài đặt trong Applications/Xcode.app/Contents/Developer (đó là nơi mà các thư mục Developer tại là)

  5. Bạn sẽ tìm thấy gói được cài đặt trong thư mục Nền tảng trong ổ đĩa bạn đã chọn. Di chuyển SDK liên quan đến thư mục Nhà phát triển trong Xcode.app. Bạn có thể phải sử dụng sudo:

    sudo mv /Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/

  6. Khởi động lại Xcode và bạn sẽ thấy SDK (cũ) mới được liệt kê trong tùy chọn của bạn cho SDK cơ sở. Yay!

Update như 12 Sep 2013

Nếu "SDK cũ" bạn đang cố gắng thêm đi kèm trong Xcode 4.3 hoặc mới hơn, thêm SDK cũng đơn giản như tải Xcode từ dev liên kết trung tâm có nội dung "Tìm kiếm phiên bản Xcode cũ hơn?" (hiện tại là here), gắn dmg, sau đó sao chép các tệp có liên quan.

Trong terminal, bạn muốn làm điều gì đó như thế này (chỉnh sửa cho số phiên bản SDK thích hợp):

cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/ 

Đối với SDK từ phiên bản Xcode trước 4.3, các bước cũ vẫn có liên quan.

Tôi thấy điều này xảy ra để làm việc để nhận được Xcode 5 GM để biên dịch các bản dựng mang giao diện người dùng iOS 6 cũ ngay cả khi được triển khai trên thiết bị iOS 7. Hữu ích cho việc sửa lỗi trong khi thiết kế lại giao diện người dùng. Điều đó nói rằng, có một cách dễ dàng hơn để có được giao diện người dùng iOS 6 trên thiết bị iOS 7.

+0

ok tôi đã thử điều này trên Lion 10.7.4 với xcode 4.3.3 để cài đặt iPhone5.0.sdk nhưng xcode dường như không nhận ra nó. Tôi có chạy mô phỏng IOS 5 và tôi có thể đặt BaseSDK thành 5.0 nhưng iPad của tôi có 5.0.1 và không có gì được chuyển ở đó. Trong Snow Leopard, không có vấn đề gì. Tất cả các chứng chỉ đều có trên cả hai hệ thống. Thật lạ .. – RedRoosterMobile

+0

Bất kỳ lỗi/cảnh báo nào từ xcode? Phiên bản Mục tiêu triển khai iOS của bạn có được đặt chính xác không? Đồng thời đảm bảo rằng armv7 được đặt làm cấu trúc hợp lệ – nioq

+0

Điều này thậm chí còn hoạt động đối với phiên bản cũ hơn của OS X SDK. Ví dụ: tôi có thể sao chép /Developer/SDKs/MacOSX10.5.sdk trên máy xây dựng cũ của tôi lên /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.5.sdk trên máy mới của tôi. –

1

Bạn có thể không, nhưng nó sẽ xây dựng tốt cho một thiết bị được cắm vào chạy một phiên bản cũ của iOS (những gì bạn nên được tiến hành thử nghiệm thích hợp của bạn trên).

8

Bạn không thể. Tuy nhiên, những gì bạn có thể làm là nhấp vào mục nhập cấp cao nhất trong Bộ điều hướng Tệp. Nó sẽ đưa bạn đến các thiết lập ứng dụng. Chuyển đến tab có tên là Cài đặt xây dựng và thay đổi Mục tiêu triển khai iOS thành bất kỳ phiên bản iOS nào bạn muốn hỗ trợ (phiên bản đầu tiên bạn hỗ trợ).

Xem "để chỉnh sửa một Setting xây dựng ...": http://developer.apple.com/library/ios/documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/Building/Building.html#//apple_ref/doc/uid/TP40010215-CH9-SW5

+0

Như đã thấy trong anwer ở trên, bạn có thể thêm SDK miễn là bạn có bản sao của xcode cũ hơn bao gồm [hoặc bạn chỉ cần sao chép sdk cũ hơn và sao chép nó vào vị trí chính xác] –

0

Tôi đã có một vấn đề tương tự trong Xcode 4,02 cho Snow Leopard sử dụng SDK 4.3. Tôi muốn thử nghiệm trên iPhone 3G nhưng iOS4.2 là phiên bản mới nhất (và chính xác) cho thiết bị đó. Để 'xem' và chạy trên thiết bị đó trong Đề án, tôi đã phải thay đổi mục Cài đặt Xây dựng cho iOS Triển khai như được mô tả ở trên. (btw bạn cũng phải có những hạn chế trên iPhone đã tắt để cho Xcode cài đặt ứng dụng :))

1

Bạn phải chạy ứng dụng của mình trong phiên bản Xcode cũ hơn đi kèm với phiên bản iOS cũ hơn. Tôi đã cài đặt 3.2.5 dưới /Developer-3.2.5/. Tôi phải nói rằng nó nhanh hơn khoảng 10 lần so với Xcode 4 ... Bạn có thể tải xuống phiên bản cũ tại đây: http://iphonesdkdev.blogspot.com/2010/04/old-versions-of-iphone-sdk.html

+0

Không có gì cũ hơn những gì anh ta có được hỗ trợ trên Lion. Tôi ở trên cùng một con thuyền. Tôi nâng cấp lên Lion, và bây giờ tôi không thể chạy bất kỳ mô phỏng cũ nào. Què. – Nate

+0

Hmm, tôi không chắc chắn ở đó. Tôi đã có 3.2.5 nằm xung quanh từ báo tuyết, nhưng nếu nó chạy tôi tưởng tượng nó tương thích. Nếu nó không cài đặt nó sẽ là một hạn chế có chủ ý tôi đoán. –

+0

Vâng, tôi khá chắc chắn.Trong vài tuần đầu tiên, Apple đã có tuyên bố từ chối trách nhiệm rõ ràng trên trang được liên kết với "Tìm kiếm mã XCode 3"? nói rằng nó không được hỗ trợ trên Lion. Trong trường hợp bạn không quen thuộc với cách thức hoạt động của Apple, họ làm những việc như thế này liên tục để đảm bảo bạn luôn phải nâng cấp lên bất cứ thứ gì mới nhất của họ (phần cứng và phần mềm). – Nate

8

Mở Xcode và mở Tùy chọn (Xcode -> Trình đơn tùy chọn). Nhấp vào biểu tượng Tải xuống và tìm trong tab Linh kiện. Tất cả các phiên bản từ 3.0 đến 5.1 sẽ khả dụng. Chỉ cần nhấp vào Cài đặt cho những ứng dụng bạn muốn sử dụng.

6

Không ai trong số những câu trả lời làm việc cho tôi cho Mac OS 10.8 và XCode 4.5. Nhưng bây giờ mọi thứ được cài đặt trong thư mục Ứng dụng, việc quản lý dễ dàng hơn nhiều.

Tùy chọn # 1: Giữ một bản sao cũ của XCode dễ dàng bằng cách đổi tên nó trước khi bạn cài đặt phiên bản mới. Sau đó, bạn có thể sử dụng Product-> Preform Action-> Run Without Building trên phiên bản mới để thử nghiệm trên các thiết bị mới hơn hoặc các trình mô phỏng mới hơn.

Tùy chọn # 2: Nếu bạn thực sự muốn xây dựng với các SDK cũ hơn trong XCode mới hơn, thì bạn có thể chỉ cần sao chép qua SDK bằng công cụ tìm. Bạn sẽ cần phải cài đặt phiên bản XCode cũ hơn trong Ứng dụng để hoạt động. Trong ví dụ sau, tôi vừa đổi tên XCode 4.4 thành XCode_old trước khi cài đặt XCode 4.5. Lưu ý: Bạn có thể nhấp chuột phải vào tệp .app và chọn Hiển thị nội dung để đến các tệp này hoặc chỉ sử dụng lệnh cp từ cửa sổ đầu cuối.

from: /Applications/Xcode_old.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk 
to: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/ 

Sau đó, iOS 5.1 sẽ hiển thị trong Cài đặt dựng dưới dạng SDK cơ sở. Bạn có thể làm điều tương tự cho trình mô phỏng:

from: /Applications/Xcode_old.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk 
to: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/ 
Các vấn đề liên quan