Note

Check out our guide for installing Python 3 on OS X.

Mac OS X comes with Python 2.7 out of the box.

  • Xsan is a powerful and scalable solution for storage and consolidation in macOS. Use the resources below to learn about setup options, network management, configuration, and more.
  • Apple ships a binary package of Git with Xcode. Binary installer. Tim Harper provides an installer for Git. The latest version is 2.31.0, which was released 8 days ago, on 2021-03-16. Building from Source. If you prefer to build from source, you can find tarballs on kernel.org. The latest version is 2.31.0. Installing git-gui.

Xcode includes everything developers need to create great applications for Mac, iPhone, iPad, Apple TV, and Apple Watch. Xcode provides developers a unified workflow for user interface design, coding, testing, and debugging. If you have an earlier release of Mac OS X, you may download the latest version of Xcode for Mac OS X 10.5 (Xcode 3.0 and Xcode 3.1 Developer Tools) or 10.4 (Xcode 2.4.1 and Xcode 2.5 Developer Tools) from the Apple developer website. Xcode is a complete developer toolset for creating apps for Mac, iPhone, iPad, Apple Watch, and Apple TV. Xcode brings user interface design, coding, testing, debugging, and submitting to the App Store all into a unified workflow.

You do not need to install or configure anything else to use Python. Having saidthat, I would strongly recommend that you install the tools and librariesdescribed in the next section before you start building Python applications forreal-world use. In particular, you should always install Setuptools, as it makesit much easier for you to install and manage other third-party Python libraries.

The version of Python that ships with OS X is great for learning, but it’s notgood for development. The version shipped with OS X may be out of date from theofficial current Python release,which is considered the stable production version.

Doing it Right¶

Let’s install a real version of Python.

Before installing Python, you’ll need to install a C compiler. The fastest wayis to install the Xcode Command Line Tools by runningxcode-select--install. You can also download the full version ofXcode from the Mac App Store, or theminimal but unofficialOSX-GCC-Installerpackage.

Note

If you already have Xcode installed, do not install OSX-GCC-Installer.In combination, the software can cause issues that are difficult todiagnose.

Note

If you perform a fresh install of Xcode, you will also need to add thecommandline tools by running xcode-select--install on the terminal.

While OS X comes with a large number of Unix utilities, those familiar withLinux systems will notice one key component missing: a decent package manager.Homebrew fills this void.

To install Homebrew, open Terminal oryour favorite OS X terminal emulator and run

The script will explain what changes it will make and prompt you before theinstallation begins.Once you’ve installed Homebrew, insert the Homebrew directory at the topof your PATH environment variable. You can do this by adding the followingline at the bottom of your ~/.profile file

Now, we can install Python 2.7:

Xcode oslog

Because python@2 is a “keg”, we need to update our PATH again, to point at our new installation:

Homebrew names the executable python2 so that you can still run the system Python via the executable python.

Xcode Os Support

Setuptools & Pip¶

Homebrew installs Setuptools and pip for you.

Setuptools enables you to download and install any compliant Pythonsoftware over a network (usually the Internet) with a single command(easy_install). It also enables you to add this network installationcapability to your own Python software with very little work.

pip is a tool for easily installing and managing Python packages,that is recommended over easy_install. It is superior to easy_installin several ways,and is actively maintained.

Virtual Environments¶

A Virtual Environment (commonly referred to as a ‘virtualenv’) is a tool to keep the dependencies required by different projectsin separate places, by creating virtual Python environments for them. It solves the“Project X depends on version 1.x but, Project Y needs 4.x” dilemma, and keepsyour global site-packages directory clean and manageable.

For example, you can work on a project which requires Django 1.10 while alsomaintaining a project which requires Django 1.8.

To start using this and see more information: Virtual Environments docs.

This page is a remixed version of another guide,which is available under the same license.

Xcode is a complete developer toolset for creating apps for Mac, iPhone, iPad, Apple Watch, and Apple TV. Xcode brings user interface design, coding, testing, debugging, and submitting to the App Store all into a unified workflow.

Downloading and updating Xcode

The current release of Xcode is available as a free download from the Mac App Store. The Mac App Store will notify you when an update is available or you can have macOS update automatically as it becomes available.

The latest beta version and previous versions of Xcode can be downloaded from the Downloads page. To download Xcode, simply sign in with your Apple ID.Apple Developer Program membership is not required.

Using Xcode

Get step-by-step guidance on how to use Xcode to build, test, and submit apps to the App Store.

Submitting apps to the App Store using Xcode

If you’re an Apple Developer Program member, Xcode provides an integrated workflow to prepare and submit apps to App Store. You should use the latest version of Xcode available on the Mac App Store to submit your apps, or when available, the latest GM seed release from the Downloads page.

Do not submit apps built using beta software, as beta versions of Xcode, Operating Systems, and SDKs are for development and testing only.

Xcode Os Compatibility

Learning about changes to Xcode

To learn about the latest features and capabilities in Xcode, see What’s New in Xcode. For update details in the latest released versions, including each beta release, see the Xcode Release Notes.

Minimum requirements and supported SDKs

Xcode VersionMinimum OS RequiredSDKArchitectureOSSimulatorSwift
Xcode 12.5 betamacOS Big Sur 11
(Apple silicon Mac)
iOS 14.5
macOS 11.3
tvOS 14.5
watchOS 7.4
DriverKit 20.4
x86_64
armv7
armv7s
arm64
arm64e
iOS 9-14.5
iPadOS 13-14.5
macOS 10.9-11.3
tvOS 9-14.5
watchOS 2-7.4
iOS 10.3.1-14.5
tvOS 10.2-14.5
watchOS 3.2-7.4
Swift 4
Swift 4.2
Swift 5.4
Xcode 12.4macOS Catalina 10.15.4 (Intel-based Mac)
macOS Big Sur 11
(Apple silicon Mac)
iOS 14.4
macOS 11.1
tvOS 14.3
watchOS 7.2
DriverKit 20.2
x86_64
armv7
armv7s
arm64
arm64e
iOS 9-14.4
iPadOS 13-14.4
macOS 10.9-11.1
tvOS 9-14.3
watchOS 2-7.2
iOS 10.3.1-14.4
tvOS 10.2-14.3
watchOS 3.2-7.2
Swift 4
Swift 4.2
Swift 5.3
Xcode 12.3macOS Catalina 10.15.4 (Intel-based Mac)
macOS Big Sur 11
(Apple silicon Mac)
iOS 14.3
macOS 11.1
tvOS 14.3
watchOS 7.2
DriverKit 20.2
x86_64
armv7
armv7s
arm64
arm64e
iOS 9-14.3
iPadOS 13-14.3
macOS 10.9-11.1
tvOS 9-14.3
watchOS 2-7.2
iOS 10.3.1-14.3
tvOS 10.2-14.3
watchOS 3.2-7.2
Swift 4
Swift 4.2
Swift 5.3
Xcode 12.2macOS Catalina 10.15.4 (Intel-based Mac)
macOS Big Sur 11
(Apple silicon Mac)
iOS 14.2
macOS 11
tvOS 14.2
watchOS 7.1
DriverKit 20
x86_64
armv7
armv7s
arm64
arm64e
iOS 9-14.2
iPadOS 13-14.2
macOS 10.9-11
tvOS 9-14.2
watchOS 2-7.1
iOS 10.3.1-14.2
tvOS 10.2-14.2
watchOS 3.2-7.1
Swift 4
Swift 4.2
Swift 5.3
Xcode 12.1macOS Catalina 10.15.4 (Intel-based Mac)
macOS Big Sur 11
(Apple silicon Mac)
iOS 14.1
macOS 10.15.6
tvOS 14
watchOS 7
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 9-14.1
iPadOS 13-14.1
macOS 10.9-11
tvOS 9-14
watchOS 2-7
iOS 10.3.1-14.1
tvOS 10.2-14
watchOS 2-7
Swift 4
Swift 4.2
Swift 5.3
Xcode 12macOS Catalina 10.15.4 (Intel-based Mac)
iOS 14
macOS 10.15.6
tvOS 14
watchOS 7
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 9-14
iPadOS 13-14
macOS 10.6-10.15.6
tvOS 9-14
watchOS 2-7
iOS 10.3.1-14
tvOS 10.2-14
watchOS 3.2-7
Swift 4
Swift 4.2
Swift 5.3
Xcode 11.7macOS Catalina 10.15.2iOS 13.7
macOS 10.15.6
tvOS 13.4
watchOS 6.2
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-13.7
iPadOS 13-13.7
macOS 10.6-10.15.6
tvOS 9-13.4
watchOS 2-6.2
iOS 10.3.1-13.7
tvOS 10.2-13.4
watchOS 3.2-6.2
Swift 4
Swift 4.2
Swift 5.2
Xcode 11.6macOS Catalina 10.15.2iOS 13.6
macOS 10.15.6
tvOS 13.4
watchOS 6.2
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-13.6
iPadOS 13-13.6
macOS 10.6-10.5.6
tvOS 9-13.4
watchOS 2-6.2
iOS 10.3.1-13.6
tvOS 10.2-13.4
watchOS 3.2-6.2
Swift 4
Swift 4.2
Swift 5.2
Xcode 11.5macOS Catalina 10.15.2iOS 13.5
macOS 10.15.4
tvOS 13.4
watchOS 6.2
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-13.5
iPadOS 13-13.5
macOS 10.6-10.15.4
tvOS 9-13.4
watchOS 2-6.2
iOS 10.3.1-13.5
tvOS 10.2-13.4
watchOS 3.2-6.2
Swift 4
Swift 4.2
Swift 5.2
Xcode 11.4.xmacOS Catalina 10.15.2iOS 13.4
macOS 10.15.4
tvOS 13.4
watchOS 6.2
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-13.4.x
iPadOS 13-13.4.x
macOS 10.6-10.15.4
tvOS 9-13.4
watchOS 2-6.2
iOS 10.3.1-13.4.x
tvOS 10.2-13.4
watchOS 3.2-6.2
Swift 4
Swift 4.2
Swift 5.2
Xcode 11.3.xmacOS Mojave 10.14.4iOS 13.3
macOS 10.15.2
tvOS 13.3
watchOS 6.1.1
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-13.3
iPadOS 13-13.3
macOS 10.6-10.15.2
tvOS 9-13.3
watchOS 2-6.1.1
iOS 10.3.1-13.3
tvOS 10.2-13.3
watchOS 3.2-6.1.1
Swift 4
Swift 4.2
Swift 5.1
Xcode 11.2.xmacOS Mojave 10.14.4 iOS 13.2
macOS 10.15.1
tvOS 13.2
watchOS 6.1
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-13.2.x
iPadOS 13-13.2.x
macOS 10.6-10.15.1
tvOS 9-13.2
watchOS 2-6.1
iOS 10.3.1-13.2.x
tvOS 10.2-13.2
watchOS 3.2-6.1
Swift 4
Swift 4.2
Swift 5.1
Xcode 11.1macOS Mojave 10.14.4 iOS 13.1
macOS 10.15
tvOS 13
watchOS 6
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-13.1
iPadOS 13-13.1
macOS 10.6-10.15
tvOS 9-13
watchOS 2-6
iOS 10.3.1-13.1
tvOS 10.2-13
watchOS 3.2-6
Swift 4
Swift 4.2
Swift 5.1
Xcode 11macOS Mojave 10.14.4iOS 13
macOS 10.15
tvOS 13
watchOS 6
DriverKit 19
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-13
iPadOS 13-13
macOS 10.6-10.15
tvOS 9-13
watchOS 2-6
iOS 10.3.1-13
tvOS 10.2-13
watchOS 3.2-6
Swift 4
Swift 4.2
Swift 5.1
Xcode 10.3macOS Mojave 10.14.3iOS 12.4
macOS 10.14.6
tvOS 12.4
watchOS 5.3
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-12.4
macOS 10.6-10.14.6
tvOS 9-12.4
watchOS 2-5.3
iOS 10.3.1-12.4
tvOS 10.2-12.4
watchOS 3.2-5.3
Swift 4
Swift 4.2
Swift 5
Xcode 10.2xmacOS Mojave 10.14.3iOS 12.2
macOS 10.14.4
tvOS 12.2
watchOS 5.2
x86_64
armv7
armv7s
arm64
arm64e
iOS 8-12.2
macOS 10.6-10.14.4
tvOS 9-12.2
watchOS 2-5.2
iOS 8.1-12.2
tvOS 9-12.2
watchOS 2-5.2
Swift 4
Swift 4.2
Swift 5

Legend

Minimum OS Required: The version of macOS required to install this version of Xcode.

Xcode Oslog

SDK: The version of SDKs included in this version of Xcode.

Architecture: The architectures supported for development by this version of Xcode.

OS: The iOS, iPadOS, macOS, tvOS, and watchOS versions supported by this version of Xcode for developing, installing, and debugging applications.

Simulator: Versions of iOS, tvOS, and watchOS simulators supported for development by this version of Xcode.

Swift: Version of Swift supported for development by this version of Xcode.

Xcode Os

Providing feedback and reporting bugs

Your feedback goes a long way towards making Xcode even better. With Feedback Assistant, you can report issues or request enhancements to APIs and tools. Include detailed information about issues, including the system and developer tools version information, and any relevant crash logs or console messages. To ask questions and find answers by Apple engineers and other developers, visit the Apple Developer Forums.

Invalid private key and certificate pairing

If you received an error message saying, 'Xcode could not find a valid private-key/certificate pair for this profile in your keychain.' This error message indicates that the Keychain Access application on your Mac is missing either the public or private key for the certificate you are using to sign your app.

This often happens when you are trying to sign and build your app from a different Mac than the one you originally used to request your code signing certificate. It can also happen if your certificate has expired or has been revoked. Ensure that your app’s provisioning profile contains a valid code signing certificate, and that the Keychain Access application on your Mac contains that certificate, the private key originally used to generate that certificate, and the WWDR Intermediate Certificate.

For instructions on how to resolve this and other code signing errors, review the Code Signing Support page.

Apple security updates

Xcode Osx Version

For information on the security content of Xcode updates, visit the Apple security updates page.