[MacPorts] #44900: Installation of Xcode should be better than Homebrew's process

MacPorts noreply at macports.org
Mon Sep 8 20:21:29 PDT 2014


#44900: Installation of Xcode should be better than Homebrew's process
--------------------------+--------------------------------
  Reporter:  tal@…        |      Owner:  macports-tickets@…
      Type:  enhancement  |     Status:  new
  Priority:  Normal       |  Milestone:
 Component:  base         |    Version:  2.3.1
Resolution:               |   Keywords:
      Port:               |
--------------------------+--------------------------------

Comment (by ryandesign@…):

 Ok, I've taken a look at the video. Thanks. It shows the terminal command
 for installing Homebrew itself being entered and run. This causes `xcode-
 select --install` to run which pops up the dialog box asking the user if
 they would like to install the command line tools. The terminal window
 asks the user to press a key when the command line tools have been
 installed. Afterward, Homebrew itself gets installed, and it is shown that
 a package can then be installed using Homebrew. I didn't see anything in
 the video about accepting the Xcode license agreement.

 MacPorts is of course installed via an installer package, not via the
 command line. The MacPorts installer package is supposed to require that
 Xcode already be installed. If it isn't, it's supposed to tell the user
 that, so that they can go install Xcode, then run the MacPorts installer
 again. Our method for detecting the presence of Xcode failed when
 Mavericks was released, so there was a time on Mavericks where our
 installer did not properly detect the absence of Xcode and erroneously
 allowed the user to proceed without it. I hope we have fixed that in the
 mean time.

 Historically (i.e. on Snow Leopard and earlier) the command line tools
 were part of the Xcode installation. The MacPorts installer checks for
 that as well, on those older systems, but I get the impression we're not
 checking for it on newer systems (i.e. the method for detection must have
 changed). Perhaps we should update that code.

 The reason we require Xcode and the command line tools to already be
 installed when the MacPorts installer runs is that the MacPorts installer
 finishes by running "sudo port selfupdate", which, if the user used an
 outdated MacPorts installer package, would cause the current version of
 MacPorts to be downloaded and compiled, for which of course a compiler
 must already be installed.

 Downloading Xcode has historically required the user to register for at
 least the free level of Apple developer account; MacPorts could not
 automate this. These days you can get Xcode from either the Apple
 developer web page or via the Mac App Store, but both do require the user
 to present their credentials.

 Last I checked (which was years ago), the installer did not give packages
 very much control. A package either succeeds, or fails at some point. The
 error message can be customized, but beyond that the behavior cannot. It
 would be nice if the MacPorts installer could detect the absence of Xcode
 and in response direct the user to the MacPorts installation instructions,
 from which we link to Xcode downloads, but I don't believe the installer
 gives us the possibility to do that.

-- 
Ticket URL: <https://trac.macports.org/ticket/44900#comment:5>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list