Xcode
Developer(s) | Apple Inc. |
---|---|
Stable release | 8.3.3 (8E3004b) (June 5, 2017[1]) [±] |
Operating system | Mac OS X 10.3 and later |
Type | Integrated development environment (IDE) |
License | Freeware with open source components |
Website |
developer |
Xcode is an integrated development environment for macOS containing a suite of software development tools developed by Apple for developing software for macOS, iOS, watchOS and tvOS. First released in 2003, the latest stable release is version 8.3.3 and is available via the Mac App Store free of charge for macOS Sierra users.[2] Registered developers can download preview releases and prior versions of the suite through the Apple Developer website.[3] However, Apple recently made a beta version of version 9 beta 2 of the software available to those of the public with Apple Developer accounts.[4]
Major features
Xcode supports source code for the programming languages C, C++, Objective-C, Objective-C++, Java, AppleScript, Python, Ruby, ResEdit (Rez), and Swift, with a variety of programming models, including but not limited to Cocoa, Carbon, and Java. Third parties have added support for GNU Pascal,[5] Free Pascal,[6] Ada,[7] C#,[8] Perl,[9] and D.
Thanks to the Mach-O executable format, which allows fat binary files, containing code for multiple architectures, Xcode can build universal binary files, which allow software to run on both PowerPC and Intel-based (x86) platforms and that can include both 32-bit and 64-bit code for both architectures. Using the iOS SDK, Xcode can also be used to compile and debug applications for iOS that run on ARM architecture processors.
Xcode includes the GUI tool Instruments, which runs atop a dynamic tracing framework, DTrace, created by Sun Microsystems and released as part of OpenSolaris.
Composition
The main application of the suite is the integrated development environment (IDE), also named Xcode. The Xcode suite includes most of Apple's developer documentation, and built-in Interface Builder, an application used to construct graphical user interfaces.
Up to Xcode 4.1, the Xcode suite included a modified version of the GNU Compiler Collection. In Xcode 3.1 up to Xcode 4.6.3, it included the LLVM-GCC compiler, with front ends from the GNU Compiler Collection and a code generator based on LLVM.[10] In Xcode 3.2 and later, it included the Clang C/C++/Objective-C compiler, with newly-written front ends and a code generator based on LLVM, and the Clang static analyzer.[11] Starting with Xcode 4.2, the Clang compiler became the default compiler,[12] Starting with Xcode 5.0, Clang was the only compiler provided.
Up to Xcode 4.6.3, the Xcode suite used the GNU Debugger (GDB) as the back-end for the IDE's debugger. Starting with Xcode 4.3, the LLDB debugger was also provided; starting with Xcode 4.5 LLDB replaced GDB as the default back-end for the IDE's debugger.[13] Starting with Xcode 5.0, GDB was no longer supplied.[14]
Removed features
Formerly, Xcode supported distributing a product build process over multiple systems. One technology involved was named Shared Workgroup Build, which used the Bonjour protocol to automatically discover systems providing compiler services, and a modified version of the free software product distcc to facilitate the distribution of workloads. Earlier versions of Xcode provided a system named Dedicated Network Builds. These features are absent in the supported versions of Xcode.
Xcode also includes Apple's WebObjects tools and frameworks for building Java web applications and web services (formerly sold as a separate product). As of Xcode 3.0, Apple dropped[15] WebObjects development inside Xcode; WOLips[16] should be used instead. Xcode 3 still includes the WebObjects frameworks.
Version history
1.x series
Xcode 1.0 was released in fall 2003. Xcode 1.0 was based on Project Builder, but had an updated user interface (UI), ZeroLink, Fix & Continue, distributed build support, and Code Sense indexing.
The next significant release, Xcode 1.5, had better code completion and an improved debugger.
2.x series
Xcode 2.0 was released with Mac OS X v10.4 "Tiger". It included the Quartz Composer visual programming language, better Code Sense indexing for Java, and Ant support. It also included the Apple Reference Library tool, which allows searching and reading online documentation from Apple’s website and documentation installed on a local computer.
Xcode 2.1 could create universal binary files. It supported shared precompiled headers, unit testing targets, conditional breakpoints, and watchpoints. It also had better dependency analysis.
The final version of Xcode for Mac OS X v10.4 was 2.5.
3.x series
Xcode 3.0 was released with Mac OS X v10.5 "Leopard". Notable changes since 2.1 include[17] the DTrace debugging tool (now named Instruments), refactoring support, context-sensitive documentation, and Objective-C 2.0 with garbage collection. It also supports Project Snapshots, which provide a basic form of version control; Message Bubbles, which show build errors debug values alongside code; and building four-architecture fat binaries (32 and 64-bit Intel and PowerPC).
Xcode 3.1 was an update release of the developer tools for Mac OS X, and was the same version included with the iPhone SDK. It could target non-Mac OS X platforms, including iPhone OS 2.0. It included the GCC 4.2 and LLVM GCC 4.2 compilers. Another new feature since Xcode 3.0 is that Xcode's SCM support now includes Subversion 1.5.
Xcode 3.2 was released with Mac OS X v10.6 "Snow Leopard" and installs on no earlier version of OS X. It supports static program analysis, among other features. It also drops official support for targeting versions earlier than iPhone OS 3.0. But it is still possible to target older versions, and the simulator supports iPhone OS 2.0 through 3.1. Also, Java support is "exiled" in 3.2 to the organizer.[18]
Xcode 3.2.6 is the last version that can be downloaded for free for users of Mac OS X v10.6. Downloading it requires a free registration at Apple's developer site.
4.x series
In June 2010, at the Apple Worldwide Developers Conference version 4 of Xcode was announced during the Developer Tools State of the Union address. Version 4 of the developer tools consolidates the Xcode editing tools and Interface Builder into one application, among other enhancements.[19][20] Apple released the final version of Xcode 4.0 on March 9, 2011. The software was made available for free to all registered members of the $99 per year Mac Developer program and the $99 per year iOS Developer program. It was also sold for $4.99 to non-members on the Mac App Store (no longer available). Xcode 4.0 drops support for many older systems, including all PowerPC development and software development kits (SDKs) for Mac OS X 10.4 and 10.5, and all iOS SDKs older than 4.3. The deployment target can still be set to produce binaries for those older platforms, but for Mac OS platforms, one is then limited to creating x86 and x86-64 binaries. Later, Xcode was free to the general public. Before version 4.1, Xcode cost $4.99.[21]
Xcode 4.1 was made available for free on July 20, 2011 (the day of Mac OS X Lion's release) to all users of Mac OS X Lion on the Mac App Store. On August 29, 2011, Xcode 4.1 was made available for Mac OS X Snow Leopard for members of the paid Mac or iOS developer programs.[22] Xcode 4.1 was the last version to include GNU Compiler Collection (GCC) instead of only LLVM GCC or Clang.
On October 12, 2011, Xcode 4.2 was released concurrently with the release of iOS 5.0, and it included many more and improved features, such as storyboarding and automatic reference counting (ARC).[12] Xcode 4.2 is the last version to support Mac OS X 10.6 "Snow Leopard", but is only available to registered developers with paid accounts; without a paid account, 3.2.6 is the latest download that appears for Snow Leopard.[23]
Xcode 4.3, released on February 16, 2012, is distributed as one application bundle, Xcode.app, installed from the Mac App Store. Xcode 4.3 reorganizes the Xcode menu to include development tools.[24] Xcode 4.3.1 was released on March 7, 2012 to add support for iOS 5.1.[25] Xcode 4.3.2 was released on March 22, 2012 with enhancements to the iOS Simulator and a suggested move to the LLDB debugger versus the GDB debugger (which appear to be undocumented changes). Xcode 4.3.3, released in May 2012, featured an updated SDK for Mac OS X 10.7.4 "Lion" and a few bug fixes.[26]
Xcode 4.4 was released on July 25, 2012.[27] It runs on both Mac OS X Lion (10.7) and OS X Mountain Lion (10.8) and is the first version of Xcode to contain the OS X 10.8 "Mountain Lion" SDK. Xcode 4.4 includes support for automatic synthesizing of declared properties, new Objective-C features such as literal syntax and subscripting, improved localization, and more.[28] On August 7, 2012, Xcode 4.4.1 was released with a few bug fixes.
On September 19, 2012, iOS 6 and Xcode 4.5 were released. Xcode added support for iOS 6 and the 4-inch Retina Display on iPhone 5 and iPod touch 5th generation. It also brought some new Objective-C features to iOS, simplified localization, and added auto-layout support for iOS.[13] On October 3, 2012, Xcode 4.5.1 was released with bug fixes and stability improvements.[2] Less than a month later, Xcode 4.5.2 was released, with support for iPad Mini and iPad with Retina Display, and bug fixes and stability improvements.
On January 28, 2013, iOS 6.1 and Xcode 4.6 were released.
5.x series
In June 2013, at the Apple Worldwide Developers Conference, version 5 of Xcode was announced.[29] On September 18, 2013 Xcode 5.0 was released. It added support for iOS 7 SDK, with always support of OS X 10.8 Mountain Lion SDK but not the support of OS X 10.9 Mavericks SDK. This latest was only included in the betas version. It also added a version of Clang generating 64-bit ARM code for iOS 7. Apple removed support for building garbage collected Cocoa binaries in Xcode 5.1.[30]
6.x series
On June 2, 2014 at the World Wide Developers Conference, Apple announced version 6 of Xcode. Features include Playgrounds, live debugging tools, and a new programming language named Swift.[31] On September 17, 2014, at the same time, iOS and Xcode 6 were released. Xcode could be downloaded on the Mac App Store.
7.x series
On June 8, 2015 at the Apple Worldwide Developers Conference Xcode version 7 was announced. It introduced support for Swift 2, and Metal for OS X, and added support for deploying on iOS devices without an Apple Developer license.[32] Xcode 7 was released on September 16, 2015.
8.x series
On June 13, 2016 at the Apple Worldwide Developers Conference Xcode version 8 was announced. It introduced support for Swift 3.[33] Xcode 8 was released on September 13, 2016.
9.x series
On June 5, 2017 at the Apple Worldwide Developers Conference Xcode version 9 was announced. It introduced support for Swift 4.[34]
Version comparison table
Discontinued | Current release | Beta |
Xcode 1.0 - Xcode 2.x (before iOS support)
Version history | ||||||||
---|---|---|---|---|---|---|---|---|
Version | Build | Release date | Runs on versions of Mac OS X | Mac OS X SDK(s) | ||||
1.0 |
September 28, 2003 | Mac OS X Panther (10.3.x) | Mac OS X Puma (10.1.x), Mac OS X Jaguar (10.2.x), and Mac OS X Panther (10.3.x) | |||||
1.1 |
December 19, 2003 | |||||||
1.2 |
April 22, 2004 | |||||||
1.5 |
August 4, 2004 | |||||||
2.0 |
April 29, 2005 | Mac OS X Tiger (10.4.x) | Mac OS X Jaguar (10.2.x), Mac OS X Panther (10.3.x), and Mac OS X Tiger (10.4.x) | |||||
2.1 |
June 6, 2005 | |||||||
2.2 |
November 10, 2005 | |||||||
2.2.1 |
January 13, 2006 | |||||||
2.3 |
May 23, 2006 | |||||||
2.4 |
August 17, 2006 | |||||||
2.4.1 |
October 31, 2006 | |||||||
2.5 |
October 30, 2007 | Mac OS X Tiger (10.4.x) and Mac OS X Leopard (10.5.x) | ||||||
Version | Build | Release date | Runs on versions of Mac OS X | Mac OS X SDK(s) |
Xcode 3.0 - Xcode 4.x
Version history | ||||||||
---|---|---|---|---|---|---|---|---|
Version | Build | Release date | min OS X to run | OS X SDK(s) | iOS SDK(s) included | Min iOS Deployment Target | iOS arm supported | additional iOS Simulators |
3.0 |
October 26, 2007 | 10.5.x | Mac OS X Panther (10.3.x), Mac OS X Tiger (10.4.x), and Mac OS X Leopard (10.5.x) | iOS 2.x + each down to iOS 2.0 | iOS 2.0 | armv6 | - | |
3.1 |
August 2, 2008 | |||||||
3.1.1 |
October 17, 2008 | |||||||
3.1.2 |
November 23, 2008 | |||||||
3.1.3 |
June 17, 2009 | 10.5.7[35] | iOS 3.1.3 (7E18) or lower[35] + each down to iOS 2.0 | armv6 + for iOS 3.x: armv7 | ||||
3.1.4 |
1203 | July 15, 2009 | ||||||
3.2 |
August 28, 2009 | 10.6.0 | Mac OS X Tiger (10.4.x), Mac OS X Leopard (10.5.x), and Mac OS X Snow Leopard (10.6.x) | |||||
3.2.1 |
October 9, 2009 | |||||||
3.2.2 |
1650 | April 3, 2010 | 10.6.2[36] | iOS 3.2 (7B367) + each down to iOS 3.0 | iOS 3.0 | armv6, armv7 | ||
3.2.3 |
June 22, 2010 | 10.6.4[37][38][39] | iOS 4.0.x[40] + iOS 3.2 | |||||
3.2.4 |
September 8, 2010 | iOS 4.1 + iOS 3.2 | iOS 4.0.2 (8A400) | |||||
3.2.5 |
1760 | October 14, 2010 | iOS 4.2 (8C134) | iOS 4.1 (8B117) + iOS 4.0.2 (8A400) + iOS 3.2 (7W367a) | ||||
3.2.6 |
1761 | February 14, 2011 | 10.6.6[41][42] | iOS 4.3 (8F190) | iOS 4.2 (8C134) + iOS 4.1 (8B117) + iOS 4.0.2 (8A400) + iOS 3.2 (7W367a) | |||
4.0 |
4A304a | March 14, 2011 | Mac OS X Snow Leopard (10.6.x) | |||||
4.0.1 |
4A1006 | March 25, 2011 | ||||||
4.0.2 |
4A2002a | April 14, 2011 | iOS 4.3.2 (8H7) | |||||
4.1 |
4B110 (10.7) 4B110f (10.6) | July 20, 2011[43] | 10.6.7[44][45] and 10.7 | Mac OS X Snow Leopard (10.6.x) and Mac OS X Lion (10.7.x) | - | |||
4.1.1 |
August 4, 2011[46] | |||||||
4.2 |
4D199 (10.7) 4C199 (10.6) | October 12, 2011 | iOS 5.0 (9A334) | downloadable: iOS 4.3.2 (8H7)[47] | ||||
4.2.1 |
4D502 | November 18, 2011 | 10.7[48][49] | |||||
4.3 |
4E109 | February 16, 2012 | 10.7.3[50][51] | |||||
4.3.1 |
4E1019 | March 7, 2012 | iOS 5.1 (9B176) | downloadable: iOS 5.0 + only for OS X 10.7:[52] iOS 4.3 | ||||
4.3.2 |
4E2002 | March 22, 2012 | ||||||
4.3.3 |
4E3002 | May 9, 2012 | ||||||
4.4 |
July 25, 2012 | 10.7.4[53][54] | Mac OS X Lion (10.7.x) and OS X Mountain Lion (10.8.x) | |||||
4.4.1 |
4F1003 | August 7, 2012 | ||||||
4.5 |
September 19, 2012 | iOS 6.0 (10A403) | iOS 4.3[55] | armv7, armv7s | downloadable: iOS 5.1 + iOS 5.0 + only for OS X 10.7: iOS 4.3 | |||
4.5.1 |
October 3, 2012 | |||||||
4.5.2 |
4G2008 | November 1, 2012 | ||||||
4.6 |
4H127 | Feb 20, 2013 | iOS 6.1 (10B141) | downloadable: iOS 6.0 + iOS 5.1 + iOS 5.0 + only for OS X 10.7: iOS 4.3 | ||||
4.6.1 |
4H512 | March 14, 2013 | ||||||
4.6.2 |
4H1003 | April 15, 2013 | ||||||
4.6.3 |
4H1503 | June 14, 2013 | ||||||
Version | Build | Release date | min OS X to run | OS X SDK(s) | iOS SDK(s) included | Min iOS Deployment Target | iOS arm supported | additional iOS Simulators |
Xcode 5.0 - 6.x (since arm64 support)
Version history | ||||||||
---|---|---|---|---|---|---|---|---|
Version | Build | Release date | min OS X to run | OS X SDK(s) | iOS SDK(s) included | Min iOS Deployment Target | iOS arm supported | downloadable iOS Simulators |
5.0 |
5A1413 | September 18, 2013 | 10.8.4[56][57] | OS X v10.8 | iOS 7.0 (11A465) | iOS 4.3 or iOS 6.0 (for arch with arm64)[58] | armv7, armv7s, arm64 | iOS 6.1 + iOS 6.0 + only for OS X 10.8:[59] iOS 5.1 + iOS 5.0 |
5.0.1 |
5A2053 | October 22, 2013 | OS X v10.8 + OS X v10.9 | iOS 7.0.3 (11B508) | iOS 4.3 or iOS 5.1.1 (for arch with arm64)[60] | |||
5.0.2 |
5A3005 | November 12, 2013 | ||||||
5.1 |
5B130a | March 10, 2014 | iOS 7.1 (11D167) | iOS 7.0 + iOS 6.1[61][62] | ||||
5.1.1 |
5B1008 | April 10, 2014 | iOS 6.1 | |||||
6.0.1 |
6A317 | Sep 17, 2014 | 10.9.4 | OS X v10.9 | iOS 8.0 (12A365) | Default: armv7, arm64 Manually:[63] armv7s |
iOS 7.1 + only for OS X 10.9[64] iOS 7.0 | |
6.1 |
6A1052c 6A1052d | October 16, 2014[65] October 20, 2014[66] | OS X v10.9 + OS X v10.10 | iOS 8.1 (12B411) | ||||
6.1.1 |
6A2008a | December 2, 2014 | ||||||
6.2 |
6C131e | March 9, 2015 | iOS 8.2 (12D508) | iOS 8.1 + iOS 7.1 | ||||
6.3 |
6D570 | April 8, 2015 | 10.10 | OS X v10.9 + OS X v10.10 | iOS 8.3 (12F69) | iOS 8.2 + iOS 8.1 + iOS 7.1 | ||
6.3.1 |
6D1002 | April 21, 2015 | ||||||
6.3.2 |
6D2105 | May 18, 2015 | ||||||
6.4 |
6E35b | June 30, 2015 | iOS 8.4 (12H141) | iOS 8.3 + iOS 8.2 + iOS 8.1 + iOS 7.1 | ||||
Version | Build | Release date | min OS X to run[67] | OS X SDK(s) | iOS SDK(s) included | Min iOS Deployment Target | iOS arm supported | downloadable iOS Simulators |
Xcode 7.0 - 8.x (since Free On-Device Development)
Version history | ||||||||
---|---|---|---|---|---|---|---|---|
Version | Build | Release date | min OS X to run[68] | OS X SDK(s)[69] | iOS SDK included[70] | watchOS SDK included[71] | tvOS SDK included[72] | Downloadable simulators[73] |
7.0 |
7A220 | September 16, 2015 | 10.10.4 | 10.11 (15A278) | iOS 9 (13A340) | watchOS 2 (13S343) | - | iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1 |
7.0.1 |
7A1001 | September 28, 2015 | ||||||
7.1 |
7B91b | October 21, 2015 | 10.10.5 | iOS 9.1 (13B137) | tvOS 9.0 (13T393) | diff between Xcode 7.0: added iOS 9.0 | ||
7.1.1 |
7B1005 | November 9, 2015 | ||||||
7.2 |
7C68 | December 8, 2015 | 10.11.2 (15C43) | iOS 9.2 (13C75) | watchOS 2.1 (13S660) | tvOS 9.1 (13U78) | diff between Xcode 7.1: added iOS 9.1 + tvOS 9.0 + watchOS 2.0 | |
7.2.1 |
7C1002 | February 3, 2016 | tvOS 9.1 (13U79) | |||||
7.3 |
7D175 | March 21, 2016 | 10.11 | 10.11.4 (15E60) | iOS 9.3 (13E230) | watchOS 2.2 (13V143) | tvOS 9.2 (13Y227) | diff between Xcode 7.2: added iOS 9.2 + tvOS 9.1 + watchOS 2.1 |
7.3.1 |
7D1012[65] 7D1014[66] | May 3, 2016 | ||||||
8.0 |
8A218a | September 13, 2016 | 10.11.5 | 10.12 (16A300) | iOS 10 (14A345) | watchOS 3 (14S326) | tvOS 10.0 (14T328) | diff between Xcode 7.3: added iOS 9.3 + tvOS 9.2 + watchOS 2.2 |
8.1 |
8B62 | October 27, 2016 | 10.12.1 (16B2649) | iOS 10.1 (14B72) | watchOS 3.1 (14S471a) | diff between Xcode 8.0: added iOS 10.0 (there is no watchOS 3.0) | ||
8.2 |
8C38 | December 12, 2016 | 10.12.2 (16C58) | iOS 10.2 (14C89) | tvOS 10.1 (14U591) | diff between Xcode 8.1: added iOS 10.1 + tvOS 10.0 | ||
8.2.1 |
8C1002 | December 19, 2016 | ||||||
8.3 |
8E162 | March 27, 2017 | 10.12 | 10.12.4 (16E185) | iOS 10.3 (14E269) | watchOS 3.2 (14V243) | tvOS 10.2 (14W260) | diff between Xcode 8.2: added iOS 10.2 + tvOS 10.1 (there is no watchOS 3.1) |
8.3.1 |
8E1000a | April 6, 2017 | ||||||
8.3.2 |
8E2002 | April 18, 2017 | ||||||
8.3.3 |
8E3004b | June 5, 2017 | iOS 10.3.1 (14E8301) | diff between Xcode 8.3.3 and Xcode 8.3.2: added watchOS 3.1 Simulator | ||||
9.0 beta 4 |
9M189t | July 24, 2017 | 10.12.4 | 10.13 (17A315g) | iOS 11.0 (15A5327g) | watchOS 4.0 (15R5331f) | tvOS 11.0 (15J5333e) | diff between Xcode 9.0 and Xcode 8.3.3: iOS 10.3.1 + tvOS 10.2 + watchOS 3.2 |
Version | Build | Release date | min macOS to run[68] | macOS SDK(s)[69] | iOS SDK included[70] | watchOS SDK included[71] | tvOS SDK included[72] | Downloadable simulators[73] |
Toolchain versions
Oldest versions
Toolchain version history | ||||||||
---|---|---|---|---|---|---|---|---|
Xcode | cctools | ld64 | GCC 4.0 | GCC 4.2 | LLVM-GCC 4.2 | LLVM | Apple LLVM-Clang | |
2.5 | 622.9 | 62.1 | 5370 | - | - | - | - | |
3.1.4 | 698.1 | 85.2.1 | 5493 | 5577 | 5555 | 2064.3 | - | |
3.2 | 750 | 95.2.12 | 5493 | 5646 | 5646 | 2118 | - | |
3.2.1 | 750 | 95.2.12 | 5493 | 5646 | 5646 | 2206 | - | |
3.2.2 | 773 | 97.2 | 5493 | 5659 | 5646 | 2207.5 | 1.0.2 | |
3.2.3 | 782 | 97.14 | 5494 | 5664 | 5658 | 2326.10 | 1.5 (60) | |
3.2.4 | 782 | 97.14 | 5494 | 5664 | 5658 | 2326.10 | 1.5 (60) | |
3.2.5 | 782 | 97.17 | 5494 | 5664 | 5658 | 2333.4 | 1.6 (70) | |
3.2.6 | 795 | 97.17 | 5494 | 5666 | 5658 | 2335.6 | 1.7 (77) (based on LLVM 2.9svn) | |
4.0 | 800 | 123.2 | 5494 | 5666 | 5658 | 2335.9 | 2.0 (137) (based on LLVM 2.9svn) | |
4.0.2 | ? | ? | 5494 | 5666 | 5658 | 2335.9 | 2.0 (137) (based on LLVM 2.9svn) | |
4.1 | 806 | 123.2.1 | - | 5666 | 5658 | 2335.15.00 | 2.1 (163.7.1) (based on LLVM 3.0svn) | |
4.2 | 809 | 127.2 | - | - | 5658 | 2336.1.00 | 3.0 (211.10.1) (based on LLVM 3.0svn) | |
4.3 | 822 | 112 | - | - | 5658 | 2336.9.00 | 3.1 (tags/Apple/clang-318.0.45) (based on LLVM 3.1svn) | |
4.3.1 | ? | ? | - | - | 5658 | 2336.9.00 | 3.1 (tags/Apple/clang-318.0.54) (based on LLVM 3.1svn) | |
4.3.2 | ? | ? | - | - | 5658 | 2336.9.00 | 3.1 (tags/Apple/clang-318.0.58) (based on LLVM 3.1svn)[74] | |
4.3.3 | ? | ? | - | - | 5658 | 2336.9.00 | 3.1 (tags/Apple/clang-318.0.61) (based on LLVM 3.1svn)[74] | |
4.4 | 829 | 133.3 | - | - | 5658 | 2336.11.00 | 4.0 (tags/Apple/clang-421.0.57) (based on LLVM 3.1svn)[74] | |
4.4.1 | ? | ? | - | - | 5658 | 2336.11.00 | 4.0 (tags/Apple/clang-421.0.60) (based on LLVM 3.1svn)[74] | |
4.5 | 836 | 134.9 | - | - | 5658 | 2336.11.00 | 4.1 (tags/Apple/clang-421.11.65) (based on LLVM 3.1svn)[74] | |
4.5.1 | ? | ? | - | - | 5658 | 2336.11.00 | 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)[74] | |
4.5.2 | ? | ? | - | - | 5658 | 2336.11.00 | 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)[74] | |
4.6 | 839 | 136 | - | - | 5658 | 2336.11.00 | 4.2 (clang-425.0.24) (based on LLVM 3.2svn)[74] | |
4.6.1 | ? | ? | - | - | 5658 | 2336.11.00 | 4.2 (clang-425.0.27) (based on LLVM 3.2svn)[74] | |
4.6.2 | ? | ? | - | - | 5658 | 2336.11.00 | 4.2 (clang-425.0.28) (based on LLVM 3.2svn)[74] | |
4.6.3 | ? | ? | - | - | 5658 | 2336.11.00 | 4.2 (clang-425.0.28) (based on LLVM 3.2svn)[74] | |
Xcode | cctools | ld64 | GCC 4.0[75] | GCC 4.2[76] | LLVM-GCC 4.2[77] | LLVM[78] | Apple LLVM-Clang[79] |
Latest versions
Toolchain version history | |||||
---|---|---|---|---|---|
Xcode | cctools | ld64 | LLVM | Clang version string | Swift version string |
5.0.0 | 846.2.1 | 224.1 | 3.3svn | 5.0 (clang-500.2.75) (based on LLVM 3.3svn)[74] | |
5.0.1 | 846.2.4 | 224.1 | 3.3svn | 5.0 (clang-500.2.79) (based on LLVM 3.3svn)[74] | |
5.0.2 | 846.2.4 | 224.1 | 3.3svn | 5.0 (clang-500.2.79) (based on LLVM 3.3svn)[74] | |
5.1 | 855 | 236.3 | 3.4svn | 5.1 (clang-503.0.38) (based on LLVM 3.4svn)[74] | |
5.1.1 | 855 | 236.4 | 3.4svn | 5.1 (clang-503.0.40) (based on LLVM 3.4svn)[74] | |
6.0.1 | 862 | 241.8 | 3.5svn | 6.0 (clang-600.0.51) (based on LLVM 3.5svn)[74] | 1.0 (swift-600.0.51.4) |
6.1 | 862 | 241.9 | 3.5svn | 6.0 (clang-600.0.54) (based on LLVM 3.5svn)[74] | 1.1 (swift-600.0.54.20) |
6.1.1 | 862 | 241.9 | 3.5svn | 6.0 (clang-600.0.56) (based on LLVM 3.5svn)[74] | 1.1 (swift-600.0.56.1) |
6.2 | 862 | 241.9 | 3.5svn | 6.0 (clang-600.0.57) (based on LLVM 3.5svn)[74] | 1.1 (swift-600.0.57.4) |
6.3 | 870 | 242 | 3.6.0svn | 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)[74] | 1.2 (swiftlang-602.0.49.3) |
6.3.1 | 870 | 242 | 3.6.0svn | 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)[74] | 1.2 (swiftlang-602.0.49.6) |
6.3.2 | 870 | 242 | 3.6.0svn | 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)[74] | 1.2 (swiftlang-602.0.53.1) |
6.4 | 870 | 242.2 | 3.6.0svn | 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)[74] | 1.2 (swiftlang-602.0.53.1) |
7.0 | 877.5 | 253.3 | 3.7.0svn[80] | 7.0.0 (clang-700.0.72)[74] | 2.0 (swiftlang-700.0.59) |
7.0.1 | 877.5 | 253.3.3 | 3.7.0svn[80] | 7.0.0 (clang-700.0.72)[74] | 2.0 (swiftlang-700.0.59) |
7.1 | 877.7 | 253.6 | 3.7.0svn[80] | 7.0.0 (clang-700.1.76)[74] | 2.1 (swiftlang-700.1.101.6) |
7.2 | 877.8 | 253.9 | 3.7.0svn[80] | 7.0.2 (clang-700.1.81)[74] | 2.1.1 (swiftlang-700.1.101.15) |
7.2.1 | 877.8 | 253.9 | 3.7.0svn[80] | 7.0.2 (clang-700.1.81)[74] | 2.1.1 (swiftlang-700.1.101.15) |
7.3 | 886 | 264.3.101 | 3.8.0svn[80] | 7.3.0 (clang-703.0.29)[74] | 2.2 (swiftlang-703.0.18.1) |
7.3.1 | 886 | 264.3.102 | 3.8.0svn[80] | 7.3.0 (clang-703.0.31)[74] | 2.2 (swiftlang-703.0.18.8) |
8.0 | 895 | 274.1 | 3.9.0svn[80] | 8.0.0 (clang-800.0.38)[74] | 3.0 (swiftlang-800.0.46.2) |
8.1 | 895 | 274.1 | 3.9.0svn[80] | 8.0.0 (clang-800.0.42.1)[74] | 3.0.1 (swiftlang-800.0.58.6 clang-800.0.42.1) |
8.2 | 895 | 274.2 | 3.9.0svn[80] | 8.0.0 (clang-800.0.42.1)[74] | 3.0.2 (swiftlang-800.0.63 clang-800.0.42.1) |
8.2.1 | 895 | 274.2 | 3.9.0svn[80] | 8.0.0 (clang-800.0.42.1)[74] | 3.0.2 (swiftlang-800.0.63 clang-800.0.42.1) |
8.3 | 898 | 278.4 | ? | 8.1.0 (clang-802.0.38)[74] | 3.1 (swiftlang-802.0.48 clang-802.0.38) |
8.3.1 | 898 | 278.4 | ? | 8.1.0 (clang-802.0.41)[74] | 3.1 (swiftlang-802.0.51 clang-802.0.41) |
8.3.2 | 898 | 278.4 | ? | 8.1.0 (clang-802.0.42)[74] | 3.1 (swiftlang-802.0.53 clang-802.0.42) |
8.3.3 | 898 | 278.4 | ? | 8.1.0 (clang-802.0.42)[74] | 3.1 (swiftlang-802.0.53 clang-802.0.42) |
9.0b1 | 900 | 301.1 | ? | 9.0.0 (clang-900.0.22.8)[74] | 4.0 (swiftlang-900.0.43 clang-90.0.22.8) |
Xcode | cctools[81] | ld64[82] | LLVM[80] | Clang version string[83] | Swift version string[84] |
See also
References
- ↑ https://developer.apple.com/library/content/releasenotes/DeveloperTools/RN-Xcode/Chapters/RevisionHistory.html#//apple_ref/doc/uid/TP40001051-CH99-SW1
- 1 2 "Xcode on the Mac App Store". Apple Inc. Retrieved June 30, 2017.
- ↑ "Mac Dev Center". Apple Developer. Retrieved July 31, 2011.
- ↑ "Xcode Downloads". Apple Developer. Retrieved July 3, 2017.
- ↑ Adriaan van Os. "GNU Pascal and Xcode". Microbizz.nl. Retrieved June 21, 2010.
- ↑ "Using Free Pascal with Xcode". Pascal-central.com. Retrieved June 21, 2010.
- ↑ "Tools". macada.org. Retrieved February 8, 2011.
- ↑ "CSharpPlugin - cocoa-sharp-dev - Google Code". Code.google.com. Retrieved June 21, 2010.
- ↑ "CamelBones, an Objective-C/Perl bridge for Mac OS X & GNUStep - Home". Camelbones.sourceforge.net. December 1, 2004. Retrieved June 21, 2010.
- ↑ Prince McLean (June 20, 2008). "Apple's other open secret: the LLVM Compiler". Retrieved April 3, 2012.
- ↑ "XCode 3.2: teh awesome edition". August 30, 2009. Archived from the original on June 16, 2013.
- 1 2 "New Features in Xcode 4: Xcode 4.2". Apple. September 16, 2015. Retrieved September 15, 2016.
- 1 2 "New Features in Xcode 4: Xcode 4.5". Apple Inc. September 16, 2015. Retrieved October 18, 2015.
- ↑ "New Features in Xcode 5: Xcode 5.0". September 16, 2015. Retrieved September 15, 2016.
- ↑ David Holt says: (May 15, 2010). "Facts about WebObjects (WebObjects Community)". Wocommunity.org. Retrieved June 21, 2010.
- ↑ "WOLips". Wiki.objectstyle.org. February 27, 2010. Retrieved June 21, 2010.
- ↑ "Apple - Mac OS X Leopard - Features - 300+ New Features". Archived from the original on October 16, 2007.
- ↑ "Apple Developer Tools for Java". Apple. Retrieved February 8, 2011.
- ↑ "WWDC Software Notes: Safari 5, Xcode 4, iTunes 9.2". Mac Rumors. June 8, 2010. Retrieved June 21, 2010.
- ↑ "Developer Tools - What's New in Xcode 4". Apple Developer. Retrieved February 8, 2011.
- ↑ "Apple makes Xcode free to all with release of 4.1 on Mac App Store". AppleInsider. July 20, 2011. Retrieved July 3, 2013.
- ↑ "New Features in Xcode 4: Xcode 4.1". Apple Inc. Retrieved September 15, 2016.
- ↑ "Why can't I download Xcode 4.2 for Snow Leopard?". Retrieved May 2, 2015.
- ↑ "New Features in Xcode 4: Xcode 4.3". Apple Inc. Retrieved September 15, 2016.
- ↑ "New Features in Xcode 4: Xcode 4.3.1 and 4.3.2". Apple Inc. Retrieved September 15, 2016.
- ↑ "New Features in Xcode 4: Xcode 4.3.3". Apple Inc. Retrieved September 15, 2016.
- ↑ "Xcode 4.4 rolls out to OS X, iOS developers via the Mac App Store". 9to5Mac. July 25, 2012. Retrieved August 2, 2012.
- ↑ "New Features in Xcode 4: Xcode 4.4". Apple Inc. Retrieved September 15, 2016.
- ↑ "Apple seeds first iOS 7 and OS X Mavericks betas to developers". AppleInsider. June 10, 2013. Retrieved June 11, 2013.
- ↑ "New Features in Xcode 5: Xcode 5.1". April 20, 2015. Retrieved September 15, 2016.
- ↑ "Xcode 6, Swift, CloudKit, and more surprising developer news from WWDC 2014". TechRepublic. June 5, 2014. Retrieved June 6, 2014.
- ↑ "New Features in Xcode 7: Xcode 7.0". developer.apple.com. Retrieved September 15, 2016.
- ↑ "What's New in Xcode". developer.apple.com. Retrieved 2016-09-15.
- ↑ "What's New in Xcode 9". developer.apple.com. Retrieved 2017-07-24.
- 1 2 "iPhone Software Development: Old versions of iPhone SDK". Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Old versions of iPhone SDK".
There were several releases of Xcode 3.2.3: with iOS 4.0; with iOS 4.0.1; with iOS 4.0.2 SDK
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Xcode". Archived from the original on July 30, 2011. Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Mac App Store - Xcode". Archived from the original on September 24, 2011. Retrieved May 2, 2015.
- ↑ "How to Install Older iOS Simulators in XCode 4.2.1 (SDK5.0)". Retrieved May 2, 2015.
- ↑ "iphone - Xcode 4.2.1 for Snow Leopard - Stack Overflow". Retrieved May 2, 2015.
- ↑ "Mac App Store - Xcode". Archived from the original on February 2, 2012. Retrieved May 2, 2015.
- ↑ "Mac App Store - Xcode". Archived from the original on February 18, 2012. Retrieved May 2, 2015.
- ↑ "Mac App Store - Xcode". Mac App Store. Archived from the original on July 1, 2012. Retrieved May 2, 2015.
- ↑ "iphone - Install Simulator SDK 4.3 to Xcode 4.4 on Mountain Lion - Stack Overflow". Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Mac App Store - Xcode". Mac App Store. Archived from the original on July 25, 2013. Retrieved May 2, 2015.
- ↑ "Unauthorized - Apple Developer" (PDF). Retrieved May 2, 2015.
- ↑ "Mac App Store - Xcode". Mac App Store. Archived from the original on October 10, 2013. Retrieved May 2, 2015.
- ↑ "Mac App Store - Xcode". Mac App Store. Archived from the original on May 30, 2014. Retrieved May 2, 2015.
- ↑ "Xcode 5 and iOS 7: Architecture and Valid architectures".
- ↑ "ios5 - Use iOS 5 Simulator in XCode 5? - Stack Overflow". Retrieved May 2, 2015.
- ↑ "About 64-Bit Cocoa Touch Apps".
- ↑ "Install ios 5 simulator to xcode 5.1?". Retrieved May 2, 2015.
- ↑ "iphone - ios 6.0 Simulator in xcode 5.1 - Stack Overflow". Retrieved May 2, 2015.
- ↑ "ios - Xcode 6 Standard architectures exclude armv7s - Stack Overflow". Retrieved May 2, 2015.
- ↑ "xcode - iOS 6.1 simulator on OSX 10.10 Yosemite - Stack Overflow". Retrieved May 2, 2015.
- 1 2 Developer Portal version
- 1 2 MAS version
- ↑ LSMinimumSystemVersion from Info.plist
- 1 2 plutil -p Xcode.app/Contents/Info.plist | grep LSMinimumSystemVersion
- 1 2 cd Xcode.app/Contents/Developer; cd Platforms/MacOSX.platform/Developer/SDKs/; plutil -p */System/Library/CoreServices/SystemVersion.plist; cd -
- 1 2 cd Xcode.app/Contents/Developer; ls Platforms/iPhoneOS.platform/DeviceSupport/ | grep '(.*)'
- 1 2 cd Xcode.app/Contents/Developer; ls Platforms/WatchOS.platform/DeviceSupport/ | grep '(.*)'
- 1 2 cd Xcode.app/Contents/Developer; ls Platforms/AppleTVOS.platform/DeviceSupport/ | grep '(.*)'
- 1 2 from preferences -> downloads
- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 "Xcode clang version record gist". Retrieved May 29, 2013.
- ↑ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.0 --version
- ↑ /Developer/usr/bin/gcc-4.2 --version
- ↑ Xcode.app/Contents/Developer/usr/bin/llvm-gcc --version
- ↑ Xcode.app/Contents/Developer/usr/bin/llvm-gcc --version
- ↑ Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang --version
- 1 2 3 4 5 6 7 8 9 10 11 12 "Clang - Source Browser". opensource.apple.com. Apple Inc. Retrieved 2017-05-11.
- ↑ cd Xcode.app/Contents/Developer; Toolchains/XcodeDefault.xctoolchain/usr/bin/otool --version
- ↑ cd Xcode.app/Contents/Developer; Toolchains/XcodeDefault.xctoolchain/usr/bin/ld -v
- ↑ cd Xcode.app/Contents/Developer; Toolchains/XcodeDefault.xctoolchain/usr/bin/clang --version
- ↑ cd Xcode.app/Contents/Developer; Toolchains/XcodeDefault.xctoolchain/usr/bin/swift --version
External links
- Xcode – Mac App Store
- Apple Developer Connection: Xcode tools and resources
- Xcode Release Notes — Archive
- Download Xcode
- Test Xcode 4.4.x app on jailbroken iPhone/iPad 5.x