World Library  
Flag as Inappropriate
Email this Article
 

Xcode

Xcode
Developer(s) Apple Inc.
Stable release 7.1 (7B91b) (October 21, 2015 (2015-10-21))
Preview release 7.2 beta 1 (7C46l) (October 27, 2015 (2015-10-27))
Written in C, C++, Objective-C, Objective-C++
Operating system Mac OS X 10.3 (Version 1.x)
Mac OS X 10.4 (Version 2.x)
Mac OS X 10.5 (Versions 2.5, 3.0, 3.1)
Mac OS X 10.6 (Versions 3.2, 4.0, 4.1, 4.2, 4.3)
Mac OS X 10.7 (Versions 4.1, 4.2, 4.3, 4.4, 4.5, 4.6)
OS X 10.8 (Version 4.4, 4.5, 4.6, 5.x)
OS X 10.9 (Version 5.x, 6.0, 6.1, 6.2)
OS X 10.10 (Version 6.x, 7.x)
OS X 10.11 (Version 7.x)
Type Integrated Development Environment (IDE)
License Freeware with open source components
Website //xcode.com.appledeveloper

Xcode is an integrated development environment (IDE) containing a suite of software development tools developed by Apple for developing software for OS X and iOS. First released in 2003, the latest stable release is version 7.1 and is available via the Mac App Store free of charge for OS X Yosemite and OS X El Capitan users.[1] Registered developers can download preview releases and previous versions of the suite through the Apple Developer website.[2] However, Apple recently made a beta version of version 7.x of the software available to those of the public with Apple Developer accounts.[3]

Contents

  • Major features 1
  • Composition 2
  • Version history 3
    • 1.x series 3.1
    • 2.x series 3.2
    • 3.x series 3.3
    • 4.x series 3.4
    • 5.x series 3.5
    • 6.x series 3.6
    • 7.x series 3.7
  • Version comparison table 4
    • Xcode 1.0 - Xcode 2.x (before iOS support) 4.1
    • Xcode 3.0 - Xcode 4.x 4.2
    • Xcode 5.0 - 6.x (since arm64 support) 4.3
    • Xcode 7.0 - 7.x (since Swift 2.0 support) 4.4
  • Toolchain versions 5
  • References 6
  • External links 7

Major features

Previously Xcode supported distributing a product build process over multiple systems. One technology involved was called 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 called Dedicated Network Builds. These features are absent in the supported versions of Xcode.

Thanks to the Mach-O executable format, which allows for “fat binaries", containing code for multiple architectures, Xcode can build universal binaries, 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 the ARM processor.

Xcode also includes Apple's WebObjects tools and frameworks for building Java web applications and web services (previously sold as a separate product). As of Xcode 3.0, Apple dropped[4] WebObjects development inside Xcode; WOLips[5] should be used instead. Xcode 3 still includes the WebObjects frameworks.

Xcode includes the GUI tool Instruments, which runs atop DTrace, a dynamic tracing framework 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 also 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.[6] 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.[7] Starting with Xcode 4.2, the Clang compiler became the default compiler,[8] 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.[9] Starting with Xcode 5.0, GDB was no longer supplied.[10]

Xcode supports C, C++, Objective-C, Objective-C++, Java, AppleScript, Python, Ruby, Rez, and Swift source code with a variety of programming models, including but not limited to Cocoa, Carbon, and Java. Third parties have added support for GNU Pascal,[11] Free Pascal,[12] Ada,[13] C#,[14] Perl,[15] and D.

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 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 lets you search and read online documentation from Apple’s website and local documentation installed on your machine.

Xcode 2.1 could create universal binaries. 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[16] the DTrace debugging tool (now called 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 supports Subversion 1.5.

Xcode 3.2 was released with

  • Xcode – Mac App Store
  • Apple Developer Connection: Xcode tools and resources
  • Mac Developer Library: Xcode 4 Release Notes
  • Download Xcode
  • Test Xcode 4.4.x app on jailbroken iPhone/iPad 5.x

External links

  1. ^ a b
  2. ^
  3. ^
  4. ^
  5. ^
  6. ^
  7. ^
  8. ^
  9. ^ a b
  10. ^
  11. ^
  12. ^
  13. ^
  14. ^
  15. ^
  16. ^ Apple - Mac OS X Leopard - Features - 300+ New Features
  17. ^
  18. ^
  19. ^
  20. ^
  21. ^
  22. ^
  23. ^
  24. ^
  25. ^
  26. ^
  27. ^
  28. ^
  29. ^
  30. ^
  31. ^
  32. ^
  33. ^ a b
  34. ^
  35. ^
  36. ^
  37. ^
  38. ^
  39. ^
  40. ^
  41. ^
  42. ^
  43. ^
  44. ^
  45. ^
  46. ^
  47. ^
  48. ^
  49. ^
  50. ^
  51. ^
  52. ^
  53. ^
  54. ^
  55. ^
  56. ^
  57. ^
  58. ^
  59. ^
  60. ^
  61. ^
  62. ^
  63. ^ Developer Portal version
  64. ^ MAS version
  65. ^ LSMinimumSystemVersion from Info.plist
  66. ^ LSMinimumSystemVersion from Info.plist
  67. ^ cd Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/; plutil -p */System/Library/CoreServices/SystemVersion.plist
  68. ^ ls Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ | grep '(.*)'
  69. ^ from preferences -> downloads
  70. ^ a b c d e f g h i j k l m n o p q r s t u v w x y z

References

Xcode cctools ld64 GCC 4.0 GCC 4.2 LLVM-GCC 4.2 LLVM Apple LLVM / Apple Clang Swift
2.5 622.9 62.1 5370 - - - - N/A
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)[70]
4.3.3 ? ? - - 5658 2336.9.00 3.1 (tags/Apple/clang-318.0.61) (based on LLVM 3.1svn)[70]
4.4 829 133.3 - - 5658 2336.11.00 4.0 (tags/Apple/clang-421.0.57) (based on LLVM 3.1svn)[70]
4.4.1 ? ? - - 5658 2336.11.00 4.0 (tags/Apple/clang-421.0.60) (based on LLVM 3.1svn)[70]
4.5 836 134.9 - - 5658 2336.11.00 4.1 (tags/Apple/clang-421.11.65) (based on LLVM 3.1svn)[70]
4.5.1 ? ? - - 5658 2336.11.00 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)[70]
4.5.2 ? ? - - 5658 2336.11.00 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)[70]
4.6 839 136 - - 5658 2336.11.00 4.2 (clang-425.0.24) (based on LLVM 3.2svn)[70]
4.6.1 ? ? - - 5658 2336.11.00 4.2 (clang-425.0.27) (based on LLVM 3.2svn)[70]
4.6.2 ? ? - - 5658 2336.11.00 4.2 (clang-425.0.28) (based on LLVM 3.2svn)[70]
4.6.3 ? ? - - 5658 2336.11.00 4.2 (clang-425.0.28) (based on LLVM 3.2svn)[70]
5.0.0 846.2.1 224.1 - - - - 5.0 (clang-500.2.75) (based on LLVM 3.3svn)[70]
5.0.1 846.2.4 224.1 - - - - 5.0 (clang-500.2.79) (based on LLVM 3.3svn)[70]
5.0.2 846.2.4 224.1 - - - - 5.0 (clang-500.2.79) (based on LLVM 3.3svn)[70]
5.1 855 236.3 - - - - 5.1 (clang-503.0.38) (based on LLVM 3.4svn)[70]
5.1.1 855 236.4 - - - - 5.1 (clang-503.0.40) (based on LLVM 3.4svn)[70]
6.0.1 ? ? - - - - 6.0 (clang-600.0.51) (based on LLVM 3.5svn)[70] 1.0 (swift-600.0.51.4)
6.1 862 241.9 - - - - 6.0 (clang-600.0.54) (based on LLVM 3.5svn)[70] 1.1 (swift-600.0.54.20)
6.1.1 862 241.9 - - - - 6.0 (clang-600.0.56) (based on LLVM 3.5svn)[70] 1.1 (swift-600.0.56.1)
6.2 862 241.9 - - - - 6.0 (clang-600.0.57) (based on LLVM 3.5svn)[70] 1.1 (swift-600.0.57.4)
6.3 870 242 - - - - 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)[70] 1.2 (swiftlang-602.0.49.3)
6.3.1 870 242 - - - - 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)[70] 1.2 (swiftlang-602.0.49.6)
6.3.2 870 242 - - - - 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)[70] 1.2 (swiftlang-602.0.53.1)
6.4 870 242.2 - - - - 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)[70] 1.2 (swiftlang-602.0.53.1)
7.0 877.5 253.3 - - - - 7.0.0 (clang-700.0.72)[70] 2.0 (swiftlang-700.0.59)
7.1 877.7 253.6 - - - - 7.0.0 (clang-700.1.76)[70] 2.1 (swiftlang-700.1.101.6)
Xcode cctools ld64 GCC 4.0 GCC 4.2 LLVM-GCC 4.2 LLVM Apple LLVM / Apple Clang Swift

Toolchain versions

Discontinued Current release Beta
Version history
Version Build Release date min OS X to run OS X SDK(s) iOS SDK(s) included other SDK(s) included downloadable iOS Simulators
7.0 7A220 September 16, 2015 10.10.4 OS X v10.11 (15A278) iOS 9 (13A340) watchOS 2 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) watchOS 2; tvOS iOS 9.0 + iOS 8.4 + iOS 8.3 + iOS 8.2 + iOS 8.1
7.2 7B91b October 27, 2015 OS X v10.11.2 beta (15C27b) iOS 9.2 beta (13C5055d)
Version Build Release date min OS X to run[66] OS X SDK(s)[67] iOS SDK(s) included[68] other SDK(s) included downloadable iOS Simulators[69]

Xcode 7.0 - 7.x (since Swift 2.0 support)

Xcode 5.0 - 6.x (since arm64 support)

Xcode 3.0 - Xcode 4.x

Xcode 1.0 - Xcode 2.x (before iOS support)

Version comparison table

On June 8, 2015 at the World Wide Developers Conference, Apple announced version 7 of Xcode. Xcode 7 introduced support for Swift 2, as well as Metal for OS X. Xcode 7 also adds support for deployment on iOS devices without an Apple Developer license.[32]

7.x series

On June 2, 2014 at the World Wide Developers Conference, Apple announced version 6 of Xcode. Features include "Playgrounds", live debugging tools, as well as an entirely new programming language called Swift.[31] Xcode 6 was released on September 17, 2014, at the same time as the release of iOS, and can now be downloaded on the Mac App Store.

6.x series

In June 2013 at the World Wide Developers Conference, Apple announced version 5 of Xcode.[29] Xcode 5.0 was released on September 18, 2013. 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]

5.x series

Xcode 4.6 was released on January 28, 2013, on the same day that iOS 6.1 was released.

Xcode 4.5 was released on September 19, 2012, on the same day that iOS 6 was released. It added support for iOS 6 and the 4-inch Retina display found 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.[9] On October 3, 2012, Xcode 4.5.1 was released with bug fixes and stability improvements.[1] 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.

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.

Xcode 4.3, released on February 16, 2012, is distributed as a single 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 as opposed to the GDB debugger (which appear to be un-documented 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]

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).[22] 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.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.[21] Xcode 4.1 was the last version to include GCC instead of only LLVM GCC or Clang.

In June 2010 at the World Wide Developers Conference, Apple announced version 4 of Xcode during the Developer Tools State of the Union address. Version 4 of the developer tools consolidates the Xcode editing tools and Interface Builder into a single application, among other enhancements.[18][19] Apple released the final code for 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 as well as 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 the 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.[20]

4.x series

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.

[17]

This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and USA.gov, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for USA.gov and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
 
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
 
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.
 


Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.