升级Xcode 14后编译Flurry SDK出现未定义符号错误求助
解决Xcode 14编译Flurry SDK出现Undefined symbol错误的方案
可能的原因及对应解决方法
1. 检查架构适配
Xcode 14默认不再支持32位架构(armv7),旧版本Flurry SDK可能因包含该架构导致编译冲突:
- 打开项目
Build Settings,找到Architectures,确认只保留arm64(真机)和x86_64(模拟器)。 - 若存在
Valid Architectures选项,同样只保留上述两种架构。
2. 彻底重置Pod依赖
执行以下命令完全清理并重新安装Pods:
pod deintegrate rm -rf Podfile.lock rm -rf ~/Library/Caches/CocoaPods pod install
安装完成后,检查Pods目录下的Flurry SDK文件夹,确认libFlurry_11.2.1.a存在且路径正确。
3. 修正链接库配置
- 进入项目
Build Phases->Link Binary With Libraries,确认libFlurry_11.2.1.a已添加,且无重复添加不同版本的Flurry库。 - 补充添加Flurry依赖的系统框架:
SystemConfiguration.framework、Security.framework、CoreTelephony.framework。
4. 调整编译链接参数
- 在
Build Settings中找到Other Linker Flags,添加-ObjC或-all_load,确保静态库中的Objective-C类被正确加载。 - 将
Dead Code Stripping设置为NO,避免编译器误删Flurry的符号。
5. 升级Flurry SDK版本
当前使用的11.2.0版本可能对Xcode 14兼容性不足,尝试升级到最新稳定版:
修改Podfile为:
pod 'Flurry-iOS-SDK/FlurrySDK', '~> 11.10.0' # 替换为最新兼容版本
然后执行pod update完成升级。
内容的提问来源于stack exchange,提问作者Bruce098
相关产品推荐
相关产品推荐

