Xcode 15.1链接器未定义符号错误求助,无法完成App构建
解决Xcode 15.1中ld: Undefined Symbols(ARKit、MessageUI相关类)的问题
你的链接错误核心原因是项目未正确关联ARKit和MessageUI系统框架,以下是具体解决步骤:
1. 添加缺失的系统框架
- 选中项目target,切换到Build Phases标签页
- 找到Link Binary With Libraries区域,点击右上角的
+按钮 - 分别搜索并添加
ARKit.framework和MessageUI.framework - 确认框架状态为
Required(若App需兼容无AR功能的设备,可设为Optional,但代码中需补充兼容性判断)
2. 验证框架搜索路径
- 切换到Build Settings标签页
- 搜索
Framework Search Paths,确保包含默认路径$(SDKROOT)/System/Library/Frameworks(若路径被修改,手动添加该条目)
3. 清理并重建项目
- 执行菜单
Product > Clean Build Folder(快捷键:Shift+Command+K) - 重启Xcode后重新构建项目
如果是跨平台引擎(如Unity、Unreal)导出的Xcode项目,需先确认引擎端已开启AR、邮件相关功能模块,再重新导出项目,避免框架依赖被遗漏。
错误信息参考:
Error: ld: Undefined Symbols ld: Undefined symbols: _OBJC_CLASS_$_ARAnchor, referenced from: in ARSessionNative.o _OBJC_CLASS_$_AROrientationTrackingConfiguration, referenced from: in ARSessionNative.o _OBJC_CLASS_$_ARPlaneAnchor, referenced from: in ARSessionNative.o _OBJC_CLASS_$_ARSession, referenced from: in ARSessionNative.o _OBJC_CLASS_$_ARWorldTrackingConfiguration, referenced from: in ARSessionNative.o _OBJC_CLASS_$_MFMailComposeViewController, referenced from: in IOSHelper.o clang: error: linker command failed with exit code 1 (use -v to see invocation)
内容的提问来源于stack exchange,提问作者dejj
相关产品推荐
相关产品推荐

