You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xcode 9.2 Objective-C项目添加WCSession出现链接错误求助

解决Objective-C iOS项目添加WatchConnectivity时的链接错误与路径警告

嘿,我看你在给复杂的Objective-C iOS项目加Watch功能时刚起步就碰到了构建问题,这几个错误和警告其实挺常见的,咱们一步步来搞定:

1. 先搞定核心的WCSession符号找不到错误

这个Undefined symbols for architecture arm64: "_OBJC_CLASS_$_WCSession"错误,本质是链接器找不到WatchConnectivity框架里的类,最常见的原因是你没把系统框架加到项目里:

  • 打开你的iOS主项目target,切换到Build Phases标签页
  • 找到Link Binary With Libraries部分,点击右下角的+号
  • 在弹出的搜索框里输入WatchConnectivity,找到对应的系统框架后添加进去
  • 重新构建项目,这个符号找不到的问题应该就能解决了

另外再确认下你的项目部署目标:WatchConnectivity要求iOS 9.0及以上,要是你的target版本低于这个,记得在Build Settings里把iOS Deployment Target调到9.0或更高。

2. 处理Library Search Paths的目录警告

那些directory not found for option的警告,是因为项目的Library Search Paths里配置了几个不存在的路径:

  • 打开主项目的Build Settings,搜索Library Search Paths
  • 在列表里找到警告里提到的这几个路径:
    • /Users/mac/Documents/raceQs-iOS/ios/raceqs_pod/Library
    • /Users/mac/Documents/raceQs-iOS/ios/raceqs_pod/Pods/build/Release-iphoneos
    • /Users/mac/Documents/raceQs-iOS/ios/raceqs_pod/Pods/build/Debug-iphoneos
  • 直接删除这些不存在的路径就行。如果这些路径是CocoaPods生成的,也可以试试在项目根目录执行pod install或者pod update,让Pods重新生成正确的路径配置。

额外提醒

要是你之后要写完整的WCSession逻辑,记得在激活session的时候实现对应的代理方法,不然可能会有运行时警告,不过这是后话啦,先把构建问题解决了再说。

内容的提问来源于stack exchange,提问作者BlastWave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:40:08