uno.check
uno.check copied to clipboard
Xcode 14.3.1 requires iOS SDK 16.4
The mlaunch
tool, part of the iOS SDK, is broken on Xcode 14.3.1.
This makes VSfM not show the simulators and, of course, deployments won't work.
Workaround
sudo dotnet workload update
Logs
/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/16.1.1481/tools/bin/mlaunch -sdkroot "/Applications/Xcode-14.3.1.app/Contents/Developer" --installdev "/Users/poupou/Projects/uno/collab20230706/MyApp01/MyApp01.Mobile/bin/Debug/net7.0-ios/iossimulator-x64/MyApp01.Mobile.app" --device ios "--devname=Mercure (2)" --install-progress
error HE0004: Could not load the framework 'ContentDeliveryServices' (path: /Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/ContentDeliveryServices):
dlopen(/Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/ContentDeliveryServices, 0x0001): Library not loaded: @rpath/ContentDelivery.framework/Versions/A/ContentDelivery
Referenced from: <77B7BF95-A673-3DD7-875F-6393D0092351> /Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/Frameworks/ITunesConnectFoundation.framework/Versions/A/ITunesConnectFoundation
Reason: tried: '/Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/Frameworks/ITunesConnectFoundation.framework/Versions/A/../../../../Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/16.1.1481/tools/lib/mlaunch/mlaunch.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/Frameworks/AppStoreService.framework/Versions/A/../../../../Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/16.1.1481/tools/lib/mlaunch/mlaunch.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/16.1.1481/tools/lib/mlaunch/mlaunch.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/../ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/16.1.1481/tools/lib/mlaunch/mlaunch.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/Applications/Xcode-14.3.1.app/Contents/SharedFrameworks/ContentDeliveryServices.framework/Versions/A/../ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/Library/Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file), '/System/Library/Frameworks/ContentDelivery.framework/Versions/A/ContentDelivery' (no such file, not in dyld cache)
This is a recurring issue with the .net iOS SDK (and the previous Xamarin.iOS SDK).
It might be a good idea to run something like /usr/local/share/dotnet/packs/Microsoft.iOS.Sdk/16.4.7067/tools/bin/mlaunch --listsim=X
after the validation/installation of the SDK to ensure mlaunch
works with the current Xcode.
On error we could suggest
- updating the iOS SDK, like
dotnet workload update
- downgrading the Xcode version
- and filling an issue
I've made the change in https://github.com/unoplatform/uno.check/pull/152, this should be enough, though the simulators validation is not there yet.