Using newer SDK on older macOS
Ken Cunningham
ken.cunningham.webuse at gmail.com
Tue Dec 3 17:57:36 UTC 2024
On 2024-12-03, at 9:52 AM, Ryan Carsten Schmidt wrote:
> On Dec 3, 2024, at 11:20, Chris Jones via macports-dev wrote:
>>
>> It could be the linker version(ld) is also too old in this case. If you are using the system provided one try with a newer one.
>
> You're right.
>
> I already had the ld64 port installed with its default variant +ld64-274 but that variant is described as the last version without libtapi support so it's not surprising it doesn't work.
>
> This is the newest variant available. It took me a minute to realize that a newer version is available by *deselecting* the variant it chose for me. That's confusing. With the newer version of ld64 (450.3) installed it's getting further.
>
> It looks like Xcode 8.3 is the first to include a new enough ld, so I'll depend on port:ld64 with earlier Xcode versions and use require_active_variants to ensure none of ld64's variants are selected. Unfortunately this means buildbot won't be able to build the ports so I won't be able to verify that future port updates don't break it.
>
> It would be great if the ld64 port could offer a version that supports libtapi by default on older systems.
Jeremy set the ld64 port up with the idea that if you ask for an unversioned ld64, you get ld64-latest.
However, there have always been bootstrapping issues with the ld64. At present, each system is set up to use the newest ld64 that the system toolchain it comes with is capable of building.
Over the past 10 years various plans have been put forward and discussed on this list regarding how that might be worked around, but none of them ever received enough support to get traction to implement.
So far.
Ken
More information about the macports-dev
mailing list