[MacPorts] #60228: gpsd doesn't fully use the right compiler
MacPorts
noreply at macports.org
Thu Apr 9 00:46:25 UTC 2020
#60228: gpsd doesn't fully use the right compiler
------------------------+-----------------------
Reporter: michaelld | Owner: fhgwright
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: gpsd |
------------------------+-----------------------
Comment (by fhgwright):
I finally had a chance to look at this, and I can't reproduce it, but I
have an idea as to why. Your (michaelld's) system is running Xcode 11.3
on 10.14, while here I have 10.3 on 10.14 and 11.3 on 10.15. Both of the
latter cases build with no issues. I've attached logfiles of both
successful builds, run with buildmakejobs=1 for consistency in the
ordering.
It seems that Apple supports Xcode 11.x on OS 10.14, but doesn't encourage
it, in the sense that it's not automatically offered by Software Update.
The buildbots are currently running 10.3 on 10.14, so I wouldn't expect to
see the trouble there.
The basic problem in this area is that the gpsd build procedure (up
through the last release) extracts a bunch of build configuration
information from the Python it's targeting, and uses that to build the
compiled extension. This can fail for various reasons related to
inconsistencies between the Python C compiler (the one used to build
Python itself) and the main C compiler used for gpsd itself. Fixing that
in the upstream gpsd code has been on my todo list for a while, but
meanwhile, the whole approach to the compiled extension has changed
upstream, so that the problem no longer exists. However, it's too big a
change to be reasonable as a patch, so the proper fix will have to wait
for the next release. If it were a widespread problem, then it might be
fixable with additional compiler-selection tweaks, but so far that doesn't
seem to be the case.
The `CC` value returned by the current Python2.7 is `/usr/bin/clang`,
suggesting that the command-line tool package is probably involved here.
I'd check to make sure that there isn't a version mismatch between CLT and
Xcode, since that would be troublesome in general, and is an obvious thing
to fix. If not, then there might be a workaround by specifying
whitelist/blacklist stuff on the command line.
If this bug is just due to a CLT mismatch, I'd close the ticket. If it's
not, but is only due to a fairly unusual setup, then I'd leave the ticket
open but lower the priority.
BTW, you're also running a pre-release version of base, which complicates
comparing logfiles.
--
Ticket URL: <https://trac.macports.org/ticket/60228#comment:5>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list