Dear Apple engineers: My previous project was successfully compiled using Xcode 16.2. Now, I need to adapt it to Xcode 26. I know that the linker in Xcode 26 has undergone significant changes. So, in the 'Other Linker Flags' configuration of the Build Settings in the project engineering of Xcode 26.2, I deleted '-ld64' and added '-Xlinker -dead_strip -Xlinker -dead_strip -allow_dead_duplicates' to adapt to the new linker of Xcode 26. After the modification, when I compiled my project engineering using Xcode 26.2 compiler, I encountered a new linker error. The error log is attached. Regarding this error, how should we solve it? Thank you.
XCode26.2 ld: Assertion failed: ((ct == Atom::ContentType::objcConst) || (ct == Atom::ContentType::objcData) || (ct == Atom::ContentType::constData) || (ct == Atom::ContentType::constText)), function ObjCClassReadOnlyDataRef, file Atom.cpp, line 329
Thanks for this very interesting post.
I'm not an expert in this field and I invite experts to comment, in my modest opinion, It looks like there’s something unexpected with ObjC/Swift metadata. Can we ask them for a focused sample project that reproduces the issue, can you make a copy of the project that is causing the issue, and then remove everything that isn’t important to keep the meta data in the project that may be causing this?
Maybe the linker error you're encountering in Xcode 26.2 after migrating from Xcode 16.2, along with the modifications you've made to the linker flags, points to a deeper issue with how object files are being processed, specifically related to Objective-C runtime data.
Could that mean or indicates there is an incompatibility or corruption in Objective-C metadata?
Any object files or libraries you're linking were compiled with an older compiler version?
Any external libraries or frameworks, with the Xcode 26.2 compiler. If you're using CocoaPods or Carthage, update them ( or ) and ensure your dependencies also support the latest Xcode?
Any flags you have removed? Im interested in the list of flags you have, try commenting out or removing these flags temporarily to see if they're contributing to the problem. A clean build after removing them is important.
Do you have bitcode enabled? Try disabling bitcode temporarily ( = in Build Settings) to see if that resolves the problem. If it does, investigate your bitcode settings or the libraries you're using with bitcode.
Still think is an external library, If you're using static libraries, particularly those built with different Xcode versions, they might contain conflicting Objective-C runtime symbols that confuse the linker.
Pay close attention to file paths in the build output. Make sure you aren't accidentally linking against older builds of your libraries.
Looking forward to your focused sample project.
Albert Pascual Worldwide Developer Relations.
Hello, I have tried all the solutions you provided, but the compilation of my project using Xcode 26.2 still failed. The problem is the same as before. This seems to be an error thrown by the new linker of Xcode. How can we locate this issue? What methods are there to make my project compile successfully in Xcode 26.2? Thank you.
我也遇到了相同的问题、而且已经好几个版本了、 现在mac升级后xcode16.2 不让用了、想再项目工程处于完全无法运行的状态 也不晓得苹果在干什么