React-Native BlueConic库iOS编译报__swift_FORCE_LOAD_$_swiftDataDetection错误
BlueConic React Native SDK iOS编译错误解决方案
错误日志
ld: warning: Could not find or use auto-linked library 'swift_Concurrency' ld: warning: Could not find or use auto-linked library 'swiftWebKit' ld: warning: Could not find or use auto-linked library 'swiftFileProvider' ld: warning: Could not find or use auto-linked library 'swiftDataDetection' Undefined symbols for architecture x86_64: "__swift_FORCE_LOAD_$_swiftDataDetection", referenced from: __swift_FORCE_LOAD_$_swiftDataDetection_$_BlueConicClient in libBlueConicClient.a(AdvancedEvent.o) __swift_FORCE_LOAD_$_swiftDataDetection_$_BlueConicClient in libBlueConicClient.a(BlueConicCookieStorage.o) __swift_FORCE_LOAD_$_swiftDataDetection_$_BlueConicClient in libBlueConicClient.a(BlueConicEventFactory.o) __swift_FORCE_LOAD_$_swiftDataDetection_$_BlueConicClient in libBlueConicClient.a(BlueConicEventManager.o) __swift_FORCE_LOAD_$_swiftDataDetection_$_BlueConicClient in libBlueConicClient.a(ClickEvent.o) __swift_FORCE_LOAD_$_swiftDataDetection_$_BlueConicClient in libBlueConicClient.a(UpdateContentEvent.o) __swift_FORCE_LOAD_$_swiftDataDetection_$_BlueConicClient in libBlueConicClient.a(Event.o) ... (maybe you meant: __swift_FORCE_LOAD_$_swiftDataDetection_$_BlueConicClient) "__swift_FORCE_LOAD_$_swiftWebKit", referenced from: __swift_FORCE_LOAD_$_swiftWebKit_$_BlueConicClient in libBlueConicClient.a(AdvancedEvent.o) __swift_FORCE_LOAD_$_swiftWebKit_$_BlueConicClient in libBlueConicClient.a(BlueConicCookieStorage.o) __swift_FORCE_LOAD_$_swiftWebKit_$_BlueConicClient in libBlueConicClient.a(BlueConicEventFactory.o) __swift_FORCE_LOAD_$_swiftWebKit_$_BlueConicClient in libBlueConicClient.a(BlueConicEventManager.o) __swift_FORCE_LOAD_$_swiftWebKit_$_BlueConicClient in libBlueConicClient.a(ClickEvent.o) __swift_FORCE_LOAD_$_swiftWebKit_$_BlueConicClient in libBlueConicClient.a(UpdateContentEvent.o) __swift_FORCE_LOAD_$_swiftWebKit_$_BlueConicClient in libBlueConicClient.a(Event.o) ... (maybe you meant: __swift_FORCE_LOAD_$_swiftWebKit_$_BlueConicClient) "__swift_FORCE_LOAD_$_swiftFileProvider", referenced from: __swift_FORCE_LOAD_$_swiftFileProvider_$_BlueConicClient in libBlueConicClient.a(AdvancedEvent.o) __swift_FORCE_LOAD_$_swiftFileProvider_$_BlueConicClient in libBlueConicClient.a(BlueConicCookieStorage.o) __swift_FORCE_LOAD_$_swiftFileProvider_$_BlueConicClient in libBlueConicClient.a(BlueConicEventFactory.o) __swift_FORCE_LOAD_$_swiftFileProvider_$_BlueConicClient in libBlueConicClient.a(BlueConicEventManager.o) __swift_FORCE_LOAD_$_swiftFileProvider_$_BlueConicClient in libBlueConicClient.a(ClickEvent.o) __swift_FORCE_LOAD_$_swiftFileProvider_$_BlueConicClient in libBlueConicClient.a(UpdateContentEvent.o) __swift_FORCE_LOAD_$_swiftFileProvider_$_BlueConicClient in libBlueConicClient.a(Event.o) ... (maybe you meant: __swift_FORCE_LOAD_$_swiftFileProvider_$_BlueConicClient) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
修复步骤
- 在iOS项目根目录新建任意名称的空Swift文件(如
Placeholder.swift),弹出是否创建桥接文件的提示时选择是,无需修改新建文件的内容。该操作会强制XCode编译时引入Swift标准库,解决Swift依赖库自动链接失败问题。 - 将iOS项目的
iOS Deployment Target设置为14.0及以上版本,BlueConic SDK依赖的swift_Concurrency等框架仅支持iOS14及更高版本的系统。 - 若使用XCode15及以上版本,在Build Settings的
Other Linker Flags配置项中添加-ld64标记,避免新链接器导致的符号解析异常。 - 清理XCode缓存,重新执行
pod install后编译即可。
内容的提问来源于stack exchange,提问作者Ton Snoei
相关产品推荐
相关产品推荐

