XCode 15 Beta示例App模拟器正常,MacPro运行报符号未找到错误
报错信息(翻译后)
dyld[24496]: 未找到符号: _$s21DeveloperToolsSupport17UVPreviewRegistryCMn
引用自: /Users/yhyq/Library/Developer/Xcode/DerivedData/DeployTest-egtmabxxlwwfbwgbdfjebghqgrjp/Build/Products/Debug/DeployTest.app/Contents/MacOS/DeployTest
预期位置: /System/Library/Frameworks/DeveloperToolsSupport.framework/Versions/A/DeveloperToolsSupport
解决步骤
调整框架链接方式
DeveloperToolsSupport是Xcode调试专属框架,仅在模拟器或调试环境生效。在MacPro真机运行时,需将其设置为可选链接:打开Xcode项目 → 选中对应Target → 进入Build Phases→Link Binary With Libraries,找到DeveloperToolsSupport.framework,将状态从Required改为Optional。清理编译缓存并重构
旧的DerivedData可能残留调试环境的编译缓存,导致真机构建出错:- 关闭Xcode
- 删除项目对应的DerivedData文件夹(示例路径:
~/Library/Developer/Xcode/DerivedData/DeployTest-egtmabxxlwwfbwgbdfjebghqgrjp) - 重新打开Xcode,选中MacPro作为运行目标,按
Cmd+Shift+K清理构建文件夹后重新编译运行。
匹配系统版本与部署目标
检查MacPro的macOS版本是否符合项目的Deployment Target设置。Xcode 15 Beta对系统版本有最低要求,若MacPro系统版本过低,也可能引发框架符号缺失问题。
内容的提问来源于stack exchange,提问作者shoji

