[MacPorts] #35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed -------------------------------+-------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Low | Milestone: Component: ports | Version: 2.1.1 Keywords: | Port: -------------------------------+-------------------------------------------- You can now download just the command line tools for XCode direct from Apple, a much smaller download and install. http://kennethreitz.com /xcode-gcc-and-homebrew.html Unfortunately, MacPorts will continually warn: Warning: Xcode does not appear to be installed; most ports will likely fail to build. My experience says things go fine with just the Command Line Tools install and the warning is misleading clutter. It would be nice if MacPorts noticed the Command Line Tools install and did not warn. Thanks. -- Ticket URL: <https://trac.macports.org/ticket/35045> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------------+------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: defect | Status: closed Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: wontfix | Keywords: Port: | --------------------------------+------------------------------------------- Changes (by cal@…): * status: new => closed * component: ports => base * resolution: => wontfix Comment: This is by design. Some ports (e.g. those using the `xcodebuild` port group) require a full Xcode installation and will fail without Xcode. -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------------+------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: defect | Status: reopened Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: | Keywords: Port: | --------------------------------+------------------------------------------- Changes (by schwern@…): * status: closed => reopened * resolution: wontfix => Comment: I have 295 active ports and so far, I haven't encountered one that's failed because I don't have a full XCode install. Is it necessary to warn on every port because some need a full XCode install? If the purpose of the warning is to let the user know they need to install XCode to fix a problem, rather than report it as a bug, is it serving its purpose if the warning is more often wrong (and ignorable) than right? Could there be a flag in the port files which do need a full xcode install and only those would trigger the warning? You mention there's already an xcodebuild group, maybe only the warning could trigger for those ports? -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------------+------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: enhancement | Status: reopened Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: | Keywords: Port: | --------------------------------+------------------------------------------- Description changed by ryandesign@…: Old description:
You can now download just the command line tools for XCode direct from Apple, a much smaller download and install. http://kennethreitz.com /xcode-gcc-and-homebrew.html
Unfortunately, MacPorts will continually warn: Warning: Xcode does not appear to be installed; most ports will likely fail to build.
My experience says things go fine with just the Command Line Tools install and the warning is misleading clutter. It would be nice if MacPorts noticed the Command Line Tools install and did not warn. Thanks.
New description: You can now download just the command line tools for XCode direct from Apple, a much smaller download and install. http://kennethreitz.com /xcode-gcc-and-homebrew.html Unfortunately, MacPorts will continually warn: {{{ Warning: Xcode does not appear to be installed; most ports will likely fail to build. }}} My experience says things go fine with just the Command Line Tools install and the warning is misleading clutter. It would be nice if MacPorts noticed the Command Line Tools install and did not warn. Thanks. -- -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------------+------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: enhancement | Status: reopened Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: | Keywords: Port: | --------------------------------+------------------------------------------- Comment(by schwern@…): Replying to [comment:3 ryandesign@…]:
Not all ports that need Xcode use the xcode portgroup.
Is that by design or is it something that should be fixed? If by design, is there other pre-existing information in the ports the warning could trigger on? If not, is there something which could be grepped in portfiles which would tell us if they depend on the full XCode environment and then add that information to the relevant portfiles? -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------------+------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: enhancement | Status: reopened Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: | Keywords: Port: | --------------------------------+------------------------------------------- Comment(by cal@…): There is a a simple way to find out whether a port needs Xcode: Try to build them all without, try to build all those that failed with Xcode. The set of ports that fail without Xcode and install successfully with Xcode is the set that would have to be marked requiring Xcode. Or, you could just solve the halting problem, either way is fine with me. MacPorts also uses the Xcode version to select different compilers and a number of Portfiles have conditionals depending on Xcode version. While I can see why people would like to see the Xcode dependency dropped, I still don't think the effort is worthwhile. -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------------+------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: enhancement | Status: reopened Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: | Keywords: Port: | --------------------------------+------------------------------------------- Comment(by schwern@…): Replying to [comment:7 cal@…]:
There is a a simple way to find out whether a port needs Xcode: Try to build them all without, try to build all those that failed with Xcode. The set of ports that fail without Xcode and install successfully with Xcode is the set that would have to be marked requiring Xcode. Or, you could just solve the halting problem, either way is fine with me.
Thank you, that is singularly unhelpful. "Let's not even talk about how to solve the problem, because the problem is so obviously unsolvable" is a great way to have a lot of unsolved problems. If the best solution you can come up with is "brute force", this does not mean somebody else might not do better. Your solution is so unimaginative, that I presume it hasn't been given much thought or discussion. So please, let's just skip over the part where you try to convince me to give up by repeatedly declaring the problem to be impossible. It just wastes everyone's time and energy. Either usefully reply with information, and 40% less drama, or quietly let me (and anyone who wants to help) "waste" my own time on finding a solution and get some work done. It's ok for somebody to be wrong on the Internet.
MacPorts also uses the Xcode version to select different compilers and a number of Portfiles have conditionals depending on Xcode version.
What do those conditionals look like? Can those be grep'd for or detected at runtime when Macports executes the Portfile? It was also mentioned earlier that not all ports that need Xcode use the xcode portgroup. I didn't get answers to whether this is by design or an oversight. It would be also be useful to know if all members of the xcode portgroup use XCode, as it may be a good first order approximation and possibly the rest can be filled in as they fail and are reported. There's more than one solution to the problem. What if the warning was only issued once per MacPorts process? What if it was issued only when a build failed? That's when it really matters, the warning provides a possible solution to the problem. No problem, no need to offer a solution. Finally, there is the discussion about whether the warning, in its current form, is doing more harm than good. If it's wrong most of the time, maybe it should just be turned off? Do you all even consider the idea of MacPorts users not installing all of XCode an idea you want to support? -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------------+------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: enhancement | Status: reopened Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: | Keywords: Port: | --------------------------------+------------------------------------------- Comment(by landonf@…): Finally, there is the discussion about whether the warning, in its current form, is doing more harm than good. If it's wrong most of the time, maybe it should just be turned off? Do you all even consider the idea of MacPorts users not installing all of XCode an idea you want to support? I think it would certainly be better if this warning was only displayed when an actual build failure occurred. -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------------+------------------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: enhancement | Status: reopened Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: | Keywords: Port: | --------------------------------+------------------------------------------- Comment(by jmr@…): This is probably effectively the same thing as #29172. -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------+-------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: enhancement | Status: reopened Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: | Keywords: Port: | --------------------------+-------------------------------- Comment (by m@…): Even when I uninstall a port, I get a similar ("slightly misleading") warning: {{{ port uninstall chmdump Error: Error: No valid Xcode installation is properly selected. Error: Please use xcode-select to select an Xcode installation: ---> Deactivating chmdump @20030521_0 ---> Cleaning chmdump ---> Uninstalling chmdump @20030521_0 ---> Cleaning chmdump }}} -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:12> MacPorts <http://www.macports.org/> Ports system for Mac OS
#35045: Don't warn about missing XCode when only Command Line Tools For XCode are installed --------------------------+-------------------------------- Reporter: schwern@… | Owner: macports-tickets@… Type: enhancement | Status: closed Priority: Low | Milestone: Component: base | Version: 2.1.1 Resolution: duplicate | Keywords: Port: | --------------------------+-------------------------------- Changes (by ryandesign@…): * status: reopened => closed * resolution: => duplicate -- Ticket URL: <https://trac.macports.org/ticket/35045#comment:14> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts