首页 > 解决方案 > 创建 XCFrameworks 时缺少架构 x86_64

问题描述

我正在尝试XCFramework使用XCode 12.2.

使用以下命令生成模拟器存档:

xcodebuild archive -scheme MyFramework -archivePath ~/Documents/frameworks/MyFramework_iphonesimulator.xcarchive -destination "generic/platform=iOS Simulator" -sdk iphonesimulator SKIP_INSTALL=NO

对于 iOS:

xcodebuild archive -scheme MyFramework -archivePath ~/Documents/frameworks/MyFramework_iphoneos.xcarchive -sdk iphoneos -destination "generic/platform=iOS"  SKIP_INSTALL=NO

然后

xcodebuild -create-xcframework -framework "~/frameworks/MyFramework_iphoneos.xcarchive/Products/Library/Frameworks/MyFramework.framework" -framework "~/frameworks/MyFramework_iphonesimulator.xcarchive/Products/Library/Frameworks/MyFramework.framework" -output ~/Documents/frameworks/xcframeworks/MyFramework.xcframework

当我尝试在其他项目中集成和使用时出现错误

架构 x86_64 的未定义符号:
OBJC_CLASS $_SnapshotHandler”,引用自:AppDelegate.o 中的 objc-class-ref

SnapshotHandler是 MyFramework 中的一个类。

我检查了它设置为的有效架构Standard Architectures,还构建了仅设置为的活动架构NO

如果我构建框架,XCode 11.6然后调用有效的架构并添加(i386 和 x86_64)。

任何帮助将不胜感激。

标签: iosxcodeframeworksxcframework

解决方案


推荐阅读