unoplatform / uno.check

CLI tool to setup your environment to build Uno Platform apps
https://platform.uno
32 stars 18 forks source link

Xcode 14.3.1 requires iOS SDK 16.4 #151

Open spouliot opened 1 year ago

spouliot commented 1 year ago

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)
spouliot commented 1 year ago

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

jeromelaban commented 1 year ago

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.