Symbol not found from libc++ on iOS

Hi, I've had one user report that, when trying to dlopen() a dynamic library embedded inside a framework, they are hit by an error that a symbol from /usr/lib/libc++.1.dylib is not found. To the best of my knowledge, that's a single user being hit (let's say the event has a low probability). Here's the full error message from dlopen():

dlopen(clang.framework/clang, 0x0009): Symbol not found: ZNSt3122_libcppverbose_abortEPKcz
Referenced from: <> /private/var/containers/Bundle/Application/<UUID>/a-Shell.app/Frameworks/clang.framework/clang
  Expected in:     <UUID> /usr/lib/libc++.1.dylib

How can I fix that? What could be the reason for libc++.1.dylib having a different content on a specific machine?

Answered by N. Holzschuch in 803540022

Update: the iOS device in question was jailbroken. I'll assume the jailbreaking method had somehow replaced libc++ with another version.

Have you tested your app on the iOS version that the user is running it on?

Share and Enjoy

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

Update: the iOS device in question was jailbroken. I'll assume the jailbreaking method had somehow replaced libc++ with another version.

Symbol not found from libc++ on iOS
 
 
Q