Undefined symbol: _dyld_enumerate_tlv_storage (OSX)

Joel joelcnz at gmail.com
Mon Oct 14 05:36:44 UTC 2019


On Friday, 11 October 2019 at 11:38:27 UTC, Jacob Carlborg wrote:
> On 2019-10-10 20:12, Robert M. Münch wrote:
>> I have two project I want to compile and both times get this 
>> error:
>> 
>> Undefined symbols for architecture x86_64:
>>   "_dyld_enumerate_tlv_storage", referenced from:
>>       __d_dyld_getTLSRange in libphobos2.a(osx_tls.o)
>> 
>> I'm wondering where this comes from as I didn't see it in the 
>> past. Any idea?
>> 
>
> Any D application needs to be compiled with DMD 2.087.1 or 
> later or the corresponding version of LDC to be able to run on 
> macOS Catalina. That includes DMD itself. The oldest version of 
> DMD that runs on Catalina is 2.088.0, since any given version 
> of DMD is compiled with the previous version.
>
> That means that all D applications out there for macOS needs to 
> be recompiled.

I get this since Catalina:

Joel-Computer:VacSpace joelchristensen$ dub
Failed to invoke the compiler dmd to determine the build 
platform: dyld: lazy symbol binding failed: Symbol not found: 
_dyld_enumerate_tlv_storage
   Referenced from: /usr/local/bin/dmd
   Expected in: /usr/lib/libSystem.B.dylib

dyld: Symbol not found: _dyld_enumerate_tlv_storage
   Referenced from: /usr/local/bin/dmd
   Expected in: /usr/lib/libSystem.B.dylib


Joel-Computer:VacSpace joelchristensen$

I use Home Brew (brew upgrade dmd, and brew upgrade dub)
Brew is only up to 2.087.1 at the moment - John Colvin seems to 
be the man that mantains dmd with brew.



More information about the Digitalmars-d-learn mailing list