[MacPorts] #63468: libde265 @1.0.8 fails to build on 10.5 i386
MacPorts
noreply at macports.org
Thu Sep 9 04:52:45 UTC 2021
#63468: libde265 @1.0.8 fails to build on 10.5 i386
------------------------+--------------------
Reporter: fhgwright | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.7.1
Resolution: | Keywords:
Port: libde265 |
------------------------+--------------------
Comment (by kencu):
This issue goes back a few years now, and there are a number other tickets
with the same error. Riccardo was running into this quite often, pushing
the envelope as he did back then (he has since moved on to Linux, mostly,
which is why we don't see Riccardo around here much any more).
The way legacysupport was set up in 2018, certain symbols were redefined
to the new, fixed ones we wanted to use. At the time, this was just fine
to do. But things then changed in the compiler world.
gcc still allows it, but as of a certain point, clang-7.0+ decided to
disallow redefining symbols and make it an error.
If you build your port with gcc or with clang-6.0 or less, it will
probably build OK (symbol redefinition is still allowed there).
Of late, MacPorts defaults to building with clang-7.0 if the gcc compilers
have been disallowed.
I know how to reverse the change in clang-7.0+ to allow symbol
redefinition again to "fix" this. I suggested doing that a year or two ago
but was over-ruled and told that was a poor plan. We were supposed to redo
legacysupport's symbol changing plan instead.
I don't have time or plans to ever do that, so I was going to go ahead and
reverse the commit that disabled symbol redefinition on clang-7.0+ anyway,
at least on < 10.6 where this is relevant.
For now, try building this port with some clang < 7, or with gcc, and it
*should* build. Please report back if it does or doesn't.
--
Ticket URL: <https://trac.macports.org/ticket/63468#comment:2>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list