Both ios-arm64-simulator and ios-x86_64-simulator represent two equivalent library definitions.
Both ios-arm64-maccatalyst and ios-x86_64-maccatalyst represent two equivalent library definitions.
Code Block sh xcodebuild -create-xcframework \ -framework ./xcframework-build/catalyst-x86_64/opencv2.framework \ -framework ./xcframework-build/catalyst-arm64/opencv2.framework \ -framework ./xcframework-build/osx-x86_64/opencv2.framework \ -framework ./xcframework-build/osx-arm64/opencv2.framework \ -framework ./xcframework-build/iphonesimulator-arm64/opencv2.framework \ -framework ./xcframework-build/iphonesimulator-x86_64/opencv2.framework \ -framework ./xcframework-build/iphoneos-arm64/opencv2.framework \ -output ./xcframework-build/opencv2.xcframework
From my understanding fat binaries for these frameworks isn't valid, but maybe it is in this case? These are static frameworks if that matters at all.
Using Xcode 12.2 RC.
It seems like using lipo for these combinations might be necessary:Both macos-x86_64 and macos-arm64 represent two equivalent library definitions.
ios-arm64-simulator and ios-x86_64-simulator
ios-arm64-maccatalyst and ios-x86_64-maccatalyst
macos-x86_64 and macos-arm64
edit: using lipo is necessary, and is the accepted solution for this.