We are facing an issue on Catalyst when building our app using Xcode 15.4.
The issue is related to precompiled frameworks and seems to be widespread as it happens with multiple vendors (like Firebase or Braze).
We are using SPM to add these dependencies, for instance:
.package(url: "https://github.com/braze-inc/braze-swift-sdk", from: "8.2.1"),
When building, we get the following error:
clang:1:1: invalid version number in '-target arm64-apple-ios10.15-macabi'
Our macOS deployment target is 12.3. Our iOS deployment target is 15.4.
I will try to create a reproducer I can share but I wanted to share this in case there's a known workaround.
Thanks in advance!
I did some rummaging and found a bug that a developer has already filed a bug about this (FB13796155
). It might even have been one of the folks on this thread. If so, thank you!
I was mystified as to where that 10.15
in the arm64-apple-ios10.15-macabi
triple came from, and I suspect it’s the LSMinimumSystemVersion
property of the BrazeKit framework itself:
% cat BrazeKit/BrazeKit.xcframework/ios-arm64_x86_64-maccatalyst/BrazeKit.framework/Versions/A/Resources/Info.plist
…
<dict>
…
<key>LSMinimumSystemVersion</key>
<string>10.15</string>
…
</dict>
</plist>
Xcode 15.4 seems to be erroneously folding this into the triple, which doesn’t make sense because macOS and Mac Catalyst version numbers exist in a different namespace.
I was able to get my test project to build by removing the package dependency and adding BrazeKit.xcframework
to my app directly. However, I’m working with a toy test app, and this is likely to be bigger ask in a real product. I think your best option might be to stick with Xcode 15.3 until this gets resolved.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"