[MacPorts] #59088: Xcode update broke linkages
MacPorts
noreply at macports.org
Thu Sep 26 02:07:29 UTC 2019
#59088: Xcode update broke linkages
---------------------+---------------------
Reporter: rhc54 | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.6.0
Resolution: | Keywords: xcode11
Port: |
---------------------+---------------------
Comment (by ryandesign):
Well, Apple has been doing this for years—releasing a new major version of
Xcode that only contains the SDK for the then-most-recent version of
macOS, even if that is later than the version of macOS you're running
Xcode on. And this has not been a problem.
Xcode 11 is the first time this is causing a problem for us, because prior
to macOS Mojave the command line tools provided headers that matched the
OS version in /usr/include and we just used those. As of Mojave, that's no
longer the case, so we had to use the SDK path. At the time, with Xcode
10, that was the 10.14 SDK path. Now that Xcode 11 is out, which doesn't
have a 10.14 SDK, we're discovering all the places where the SDK path got
baked into programs. It's the same problem I discovered years ago when
investigating whether we should make MacPorts always use the SDK; see
#41783.
I agree that if we used the unversioned MacOSX.sdk we would not have as
bad a problem, and maybe that's what we should modify MacPorts base to do,
though that still comes with the problem that it is specific to the Xcode
installation directory, and thus requires that Xcode exists and is in its
default location. Meanwhile effort has been put into allowing MacPorts to
function better without needing Xcode to be installed; baking Xcode-
relative SDK paths into programs defeats that.
I don't know of a solution that covers all bases.
--
Ticket URL: <https://trac.macports.org/ticket/59088#comment:9>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list