CLI Error when running Go executable

How do I get rid of this CLI error? Thanks

dyld[35085]: symbol '__ZTINSt3__13pmr15memory_resourceE' missing from root that overrides /usr/lib/libc++.1.dylib. Use of that symbol in /System/Library/PrivateFrameworks/caulk.framework/Versions/A/caulk is being set to 0xBAD4007.

Answered by DTS Engineer in 829926022

I recommend that you raise this via the support channel for the third-party tools you’re using. I can explain this error, but the way that you fix that depends on how those tools work.

The error is coming back from the dynamic linker. Your app is referencing a symbol, __ZTINSt3__13pmr15memory_resourceE [1], that the dynamic linker is unable to find. The worrying bit is this: /System/Library/PrivateFrameworks/caulk.framework/Versions/A/caulk. It indicates that your tools have managed to import Apple’s internal version of this library, which is bad.

IMPORTANT Apple platform’s use a two-level namespace, so a Mach-O image records both the name and the expected location of each imported symbol. I talk about this more in Understanding Mach-O Symbols. You might also wanna have a read of An Apple Library Primer, which explains a whole bunch of the backstory.

The normal way to fix problems like this is to have your tools build there own copy of the library and then embed it in your product. However, I don’t know enough about this specific setup to tell you whether that’s the right option here.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

[1] This is a C++ mangled symbol, which translates as follows:

% c++filt '__ZTINSt3__13pmr15memory_resourceE'
typeinfo for std::__1::pmr::memory_resource

I recommend that you raise this via the support channel for the third-party tools you’re using. I can explain this error, but the way that you fix that depends on how those tools work.

The error is coming back from the dynamic linker. Your app is referencing a symbol, __ZTINSt3__13pmr15memory_resourceE [1], that the dynamic linker is unable to find. The worrying bit is this: /System/Library/PrivateFrameworks/caulk.framework/Versions/A/caulk. It indicates that your tools have managed to import Apple’s internal version of this library, which is bad.

IMPORTANT Apple platform’s use a two-level namespace, so a Mach-O image records both the name and the expected location of each imported symbol. I talk about this more in Understanding Mach-O Symbols. You might also wanna have a read of An Apple Library Primer, which explains a whole bunch of the backstory.

The normal way to fix problems like this is to have your tools build there own copy of the library and then embed it in your product. However, I don’t know enough about this specific setup to tell you whether that’s the right option here.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

[1] This is a C++ mangled symbol, which translates as follows:

% c++filt '__ZTINSt3__13pmr15memory_resourceE'
typeinfo for std::__1::pmr::memory_resource
CLI Error when running Go executable
 
 
Q