XCode 从 iphone 切换到 pad 时构建失败,反之亦然
XCode build fails when switching from iphone to pad or vice versa
当在 Xcode 和 运行 中构建和测试应用程序时,比方说,ipad 然后想切换到 iphone,我得到以下构建错误:
ld: warning: ignoring file /xxx/Build/Products/Debug- iphoneos/libCTCheckbox.a, file was built for archive which is not the architecture being linked (arm64): /xxx/Library/Developer/Xcode/DerivedData/xxx/Build/Products/Debug-iphoneos/libCTCheckbox.a
我所有的 pod 库。
然后:
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_RKObjectMapping", referenced from:
objc-class-ref in MappingGenerator.o
objc-class-ref in SyncingManager.o
一大堆文件。
这是在我将 Cocoapods 升级到 1.0.1 版并 运行 安装 pod 后开始发生的。
在 XCode(版本 8.0)中,我的项目构建设置、项目目标和 Pods 项目设置为:
- 架构:标准架构(armv7、arm64)
- 仅构建活动架构:调试 -> 是,发布 -> 否
- 有效架构:armv7、armv7s、arm64
- 目标设备系列:1,2
- 库搜索路径:$(inherited), "${PODS_ROOT}/GoogleAnalytics/Libraries"
- 框架搜索路径:$(inherited)
当我尝试 "Build Active Architectures Only" 设置并清理项目并重新启动 XCode 时,最终构建再次成功,但我没有找到可靠的操作顺序。当我想切换回 ipad 时,同样的事情又发生了。
对重复的问题表示歉意,看起来我通过删除 DerivedData 中的所有内容解决了这个问题,请参阅
当在 Xcode 和 运行 中构建和测试应用程序时,比方说,ipad 然后想切换到 iphone,我得到以下构建错误:
ld: warning: ignoring file /xxx/Build/Products/Debug- iphoneos/libCTCheckbox.a, file was built for archive which is not the architecture being linked (arm64): /xxx/Library/Developer/Xcode/DerivedData/xxx/Build/Products/Debug-iphoneos/libCTCheckbox.a
我所有的 pod 库。
然后:
Undefined symbols for architecture arm64: "_OBJC_CLASS_$_RKObjectMapping", referenced from: objc-class-ref in MappingGenerator.o objc-class-ref in SyncingManager.o
一大堆文件。
这是在我将 Cocoapods 升级到 1.0.1 版并 运行 安装 pod 后开始发生的。
在 XCode(版本 8.0)中,我的项目构建设置、项目目标和 Pods 项目设置为:
- 架构:标准架构(armv7、arm64)
- 仅构建活动架构:调试 -> 是,发布 -> 否
- 有效架构:armv7、armv7s、arm64
- 目标设备系列:1,2
- 库搜索路径:$(inherited), "${PODS_ROOT}/GoogleAnalytics/Libraries"
- 框架搜索路径:$(inherited)
当我尝试 "Build Active Architectures Only" 设置并清理项目并重新启动 XCode 时,最终构建再次成功,但我没有找到可靠的操作顺序。当我想切换回 ipad 时,同样的事情又发生了。
对重复的问题表示歉意,看起来我通过删除 DerivedData 中的所有内容解决了这个问题,请参阅