[MacPorts] #62426: libc++: using a newer libc++ to build software on older macos systems
MacPorts
noreply at macports.org
Mon Mar 15 17:11:14 UTC 2021
#62426: libc++: using a newer libc++ to build software on older macos systems
--------------------------+----------------------
Reporter: kencu | Owner: kencu
Type: enhancement | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: libcxx |
--------------------------+----------------------
Comment (by Wowfunhappy):
I understand approximately 15% of what's going on here, so please excuse
the possibly-stupid question: If we've swapped out the system's `libc++`
for our special `macports-libc++.dylib`, for a particular piece of
software, why is ODR a problem? Shouldn't that software only ever use
`macports-libc++`, and never the system's `libc++`? Does it really matter
that ''other'' software might be using the system's `libc++`?
On a completely separate track, I wonder if there's some sort of macho-o
linking trick (presumably one of http://blog.darlinghq.org/2018/07/mach-o
-linking-and-loading-tricks.html) that would allow the system's `libc++`
to fall back to `macports-libc++` ''if and only if'' it encountered an
undefined symbol. I'm thinking primarily about how I was able to get Unity
games working on Mavericks, by replacing and then re-exporting
`libSystem.B.dylib` in order to add one missing function:
https://apple.stackexchange.com/questions/414688/how-can-i-run-newer-
unity-games-on-os-x-10-9-mavericks/414689.
Again, my sincere apologies if this is all very dumb. Cheers!
--
Ticket URL: <https://trac.macports.org/ticket/62426#comment:15>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list