Collectives™ on Stack Overflow

Find centralized, trusted content and collaborate around the technologies you use most.

Learn more about Collectives

Teams

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Learn more about Teams

I am trying to update Xcode from the command line. Initially I tried running:

 xcode-select --install

which resulted in this message:

xcode-select: error: command line tools are already installed, use "Software Update" to install updates

So the question remains, is there a way to update Xcode from the command line?

So obviously you can install from the app store... However I have a hunch that using a terminal command will be faster and more effecient than using the appstore (GUI?). Can anyone build on this idea? I put GUI in paranthesis because i dont know if im using the right terminology. – Bozeyman9000 Apr 12, 2018 at 3:24 The ehow link in Rohit Pradhan's answer should be removed. As of 2022-02-13, it redirects to an unrelated site (itstillworks[.]com that's flagged by a few scanners for malware... virustotal.com/gui/url/… and urlvoid.com/scan/itstillworks.com – Jonathan Dagle Feb 13, 2022 at 17:17

What you are actually using is the command to install the Xcode command line tools - xcode-select --install. Hence the error message you got - the tools are already installed.

The command you need to update Xcode is softwareupdate command [args ...]. You can use softwareupdate --list to see what's available and then softwareupdate --install -a to install all updates or softwareupdate --install <product name> to install just the Xcode update (if available). You can get the name from the list command.

As it was mentioned in the comments here is the man page for the softwareupdate tool.

2019 Update

A lot of users are experiencing problems where softwareupdate --install -a will in fact not update to the newest version of Xcode. The cause for this is more than likely a pending macOS update (as @brianlmerritt pointed out below). In most cases updating macOS first will solve the problem and allow Xcode to be updated as well.

Updating the Xcode Command Line Tools

A large portion of users are landing on this answer in an attempt to update the Xcode Command Line Tools. The easiest way to achieve this is by removing the old version of the tools, and installing the new one.

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

A popup will appear and guide you through the rest of the process.

Hmm, for me for some reason update is listed in App Store, but not listed in command line. – Gino Pane Nov 7, 2016 at 20:55 Upon testing, softwareupdate --install -a does not even update Xcode, so the answer is entirely wrong it seems. – Charlie Gorichanaz Apr 13, 2017 at 22:25 Ran softwareupdate -i -r to install the [recommended] install only, which was the Command Line Tools. It Downloaded twice, installed once, then completed. Seeing that it didn't solve the problem, I reran softwareupdate --list and the recommendation persisted. In AppStore, the Software Update had disappeared, then reappeared. Upon doing it through AppStore, I was prompted to accept user terms. After accepting, it seemed to work. Repeated running softwareupdate --list and it showed up as still recommended... – GMarx Aug 1, 2017 at 5:50 problem solved with the command: sh sudo rm -rf /Library/Developer/CommandLineTools xcode-select --install – Adiaos Feb 6, 2020 at 3:48
  • removing the old tools ($ sudo rm -rf /Library/Developer/CommandLineTools)
  • install xcode command line tools again ($ xcode-select --install).
  • After these steps you will see a pop to install the new version of the tools.

    This appeared to work for me: the commands ran without errors, the popup ran to completion, and a new /Library/Developer/CommandLineTools directory was installed. However, the new directory was also out of date (from Xcode 7.3 instead of the current 9.4), so it didn't solve my problem. I ended up searching for developer tools on developer.apple.com/download/more and downloading Command_Line_Tools_macOS_10.13_for_Xcode_9.4.1 from there. – jbyler Aug 24, 2018 at 17:21 I could only remove /Library/Developer/CommandLineTools by adding a sudo so it became sudo rm -rf /Library/Developer/CommandLineTools – George Oct 16, 2018 at 21:32 @ipinak I found sudo rm -rf $(xcode-select -print-path) in github.com/nodejs/node-gyp/blob/master/macOS_Catalina.md docs, so you don't need to remove all command line tools as this seems overkill – mtx Jan 22, 2020 at 17:24

    I encountered the same issue when I uninstalled the complete version of Xcode to reinstall the CLI version. My fix was:

    sudo xcode-select -s /Library/Developer/CommandLineTools

    sometimes the brute force way is the easiest and least complex way (esp true in AppleLand) - however still ended up with an older version – nhed Feb 18, 2018 at 8:48 After upgrading a device to Catalina, I wasn't able to install cocoapods until doing this. But it seems to have led to further issues, with xcodebuild requiring xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance. I then had to run sudo xcode-select -r to reset the command line tools path. – Lawrence Weru Mar 11, 2020 at 5:26

    After installing Command Line Tools (with xcode-select --install), type:

    sudo xcode-select --switch /Library/Developer/CommandLineTools/
    

    You should be able to run git now:

    10:29 $ git --version
    git version 2.17.2 (Apple Git-113)
                    I can confirm, this is working for me in the latest version of Mac Catlina (10.15.4 (19E287))
    – Gaurav Sarma
                    Jun 3, 2020 at 7:31
    

    I got this error after deleting Xcode. I fixed it by resetting the command line tools path with sudo xcode-select -r.

    Before:

    navin@Radiant ~$ /usr/bin/clang
    xcrun: error: active developer path ("/Applications/Xcode.app/Contents/Developer") does not exist
    Use `sudo xcode-select --switch path/to/Xcode.app` to specify the Xcode that you wish to use for command line developer tools, or use `xcode-select --install` to install the standalone command line developer tools.
    See `man xcode-select` for more details.
    navin@Radiant ~$ xcode-select --install
    xcode-select: error: command line tools are already installed, use "Software Update" to install updates
    

    After:

    navin@Radiant ~$ /usr/bin/clang
    clang: error: no input files
                    This fixed it for me. I also deleted Xcode and ran into the error above. While I did try to reinstall just the command line tools using the suggestions in other answers, this is what ultimately resolved the issue.
    – Ryan Marten
                    Jun 1, 2020 at 17:33
    

    Just type the commands

    cd  /Library/Developer/CommandLineTools/Packages/;
    open macOS_SDK_headers_for_macOS_10.14.pkg
    

    Reference: https://forums.developer.apple.com/thread/104296

    I can't say that this is the correct answer by itself, as I also tried numerous other solutions provided here, but it was only after using this solution that the problem was solved, thanks! – alexexchanges Jul 31, 2019 at 2:07 This package has to exist before this can work. In my version of Xcode it doesn't. (macOS 10.15 after upgrade) – John Perry Aug 4, 2020 at 17:51

    Did nothing for me.

    I had to do things in the following order

    sudo rm -rf /Library/Developer/CommandLineTools
    sudo xcode-select --install
    

    This installed a newer xcode, but not latest.

    Then I did

    softwareupdate --all --install --force
    

    and they updated completely.

    When adding an answer to an older question with existing answers it is useful to point out what new aspect your answer addresses, and also to address if the passage of time and the release of new version has an impact on the answer. – Jason Aller Aug 22, 2019 at 4:46 Confirmed this works on Mac OS Catalina beta. It launches an installation window to download the required software after you approve access. – Jas Sep 17, 2019 at 18:00 Confirmed this does not work on OS Catalina. Or High Sierra. Or Sierra... (sample size: entire department) – Jason Jul 22, 2020 at 21:58

    I was facing the same problem, resolved it by using the following command.

    sudo xcode-select -s /Library/Developer/CommandLineTools

    After running the above command then xcode-select -p command showed the following.

    /Library/Developer/CommandLineTools

    Not sure why, but after running the first answer's commands, and then this one it started working for me – Daniel Jan 31, 2021 at 12:59

    @Vel Genov's answer is correct, except when the version of Xcode can't be updated because it is the latest version for your current version of Mac OS. If you know there is a newer Xcode (for example, it won't load an app onto a device with a recent version of iOS) then it's necessary to first upgrade Mac OS.

    Further note for those like me with old Mac Pro 5.1. Upgrading to Mojave required installing the metal gpu (Sapphire AMD Radeon RX 560 in my case) but make sure only HDMI monitor is installed (not 4K! 1080 only). Only then did install Mojave say firmware update required and shut computer down. Long 2 minute power button hold and it all upgraded fine after that!

    Catalina update - softwareupdate --install -a won't upgrade xcode from command line if there is a pending update (say you selected update xcode overnight)

    Xcode::Install is a simple cli software that allow you to install/select a specific Xcode version.

    You can install it using gem install xcode-install
    Then you will be able to install a specific version with xcversion install 9.4.1
    And if you have more than one version installed, you can switch version with xcversion select 9.4

    You can find more information at https://github.com/KrauseFx/xcode-install

    I am now running OS Big Sur. xcode-select --install, and sudo xcode-select --reset did not resolve my issue, neither did the recommended subsequent softwareupdate --install -a command. For good measure, I tried the recommended download from Apple Downloads, but the Command Line Tools downloads available there are not compatible with my OS.

    I upvoted the fix that resolved for me, sudo xcode-select --switch /Library/Developer/CommandLineTools/ and added this post for environment context.

    I was trying to use the React-Native Expo app with create-react-native-app but for some reason it would launch my simulator and just hang without loading the app. The above answer by ipinak above reset the Xcode CLI tools because attempting to update to most recent Xcode CLI was not working. the two commands are:

    rm -rf /Library/Developer/CommandLineTools
    xcode-select --install
    

    This process take time because of the download. I am leaving this here for any other would be searches for this specific React-Native Expo fix.

    I was faced with this today after an update from Xcode (App Store on Mac) updated my Xcode.

    My SourceTree wouldn't allow me to do a merge conflict. In Xcode I found that Command Tools was NOT selected. I selected it, however still no dice as I was getting the same message of:

    I performed the command:

    softwareupdate --list

    which gave me a list of products, including THREE (3) versions of CommandLine Tools Software Update Tool

    Finding available software Software Update found the following new or updated software:

  • Label: Command Line Tools for Xcode-13.2 Title: Command Line Tools for Xcode, Version: 13.2, Size: 577329K, Recommended: YES,
  • Label: SFSymbolsAuto-3.3 Title: SF Symbols, Version: 3.3, Size: 169368K, Recommended: YES,
  • Label: Command Line Tools for Xcode-13.3 Title: Command Line Tools for Xcode, Version: 13.3, Size: 718145K, Recommended: YES,
  • Label: Command Line Tools for Xcode-13.4 Title: Command Line Tools for Xcode, Version: 13.4, Size: 705462K, Recommended: YES,
  • my version of Xcode is 13.4, so I preceded to try to update just the one. I used the Label, with escaped spaces (which also works with just quoted label btw "Command Line Tools for Xcode-13.4"

    softwareupdate -i Command\ Line\ Tools\ for\ Xcode-13.4

    In doing so, ALL 3 updates of Command Line Tools disappeared and I was able to continue.

    Hope this helps someone else out there.

    I arrived here trying to install Appium. Adding my answer in case other folks land here for the same issue.

    appium-doctor --ios

    ... bunch of stuff...

    WARN AppiumDoctor ✖ Error running xcrun simctl

    ... bunch of stuff...

    info AppiumDoctor ### Manual Fixes Needed ###

    info AppiumDoctor The configuration cannot be automatically fixed, please do the following first:

    WARN AppiumDoctor ➜ Manually install Xcode, and make sure 'xcode-select -p' command shows proper path like '/Applications/Xcode.app/Contents/Developer'

    In my case

    xcode-select -p

    /Library/Developer/CommandLineTools

    which appeared wrong...but I knew I had recently updated Xcode and the command line tools

    so...

    sudo xcode-select -r (sudo required)

    then...

    xcode-select -p
    /Applications/Xcode.app/Contents/Developer

    After this, no warning. Appium-doctor returned clean.

    xCode version 11.2.1 is necessary for building app in iPad 13.2.3, When I directly try to upgrade from xcode 11.1 to 11.2.1 through App Store it get struck, So after some research , I found a solution to upgrade by removing the existing xcode from the system

    So here I am adding the steps to upgrade after uninstalling existing xcode.

  • Go to Applications and identify Xcode and drag it to trash.
  • Empty trash to permenently delete Xcode.
  • Now go to ~/Library/Developer/ folder and remove the contents completely Use sudo rm -rf ~/Library/Developer/ to avoid any permission issue while deleting
  • Lastly remove any cache directory associated with xcode in the path ~/Library/Caches/com.apple.dt.Xcode sudo rm -rf ~/Library/Caches/com.apple.dt.Xcode/*
  • After completing the above steps you can easly install xcode from App Store, which will install the current latest version of xcode
  • Note: Please take a backup of your existing projects before making the above changes

    This reminds me why I hate MacOS. Every time I tried one of these errors I would get the incomprehensible error: No install could be requested (perhaps no UI is present) Turns out this "CLI" actually needs a graphical session to run. WTF! Very useful when you're actually only ever connecting to the remote mac server over SSH to queue iOS builds.

    So the answer for me was:

    Physically travel to the Mac, attach screen, mouse and keyboard, and run the command there.

    To those having this issue after update to Catalina, just execute this command on your terminal

    sudo rm -rf /Library/Developer/CommandLineTools; xcode-select --install;
                    This doesn’t add anything to the other answers that already mention these exact commands.
    – bfontaine
                    Jan 5, 2020 at 22:25
            

    Thanks for contributing an answer to Stack Overflow!

    • Please be sure to answer the question. Provide details and share your research!

    But avoid

    • Asking for help, clarification, or responding to other answers.
    • Making statements based on opinion; back them up with references or personal experience.

    To learn more, see our tips on writing great answers.