xamarin / xamarin-macios

.NET for iOS, Mac Catalyst, macOS, and tvOS provide open-source bindings of the Apple SDKs for use with .NET managed languages such as C#
Other
2.45k stars 511 forks source link

Can't build a .NET MAUI application using Xcode 16 nor understand the error messages #21379

Closed rogersm-uwosh closed 3 days ago

rogersm-uwosh commented 5 days ago

Apple platform

iOS

Framework version

net8.0-*

Affected platform version

VSCode 19.4.0

Description

I'm running macOS (Sonoma 14.6.1), VSCode (1.94.0) with the .NET MAUI extension (v1.3.29). I think I've got the .NET version that was just released --

 Workload version: 8.0.402.1
Configured to use workload sets when installing new manifests.
 [macos]
   Installation Source: SDK 8.0.400
   Manifest Version:    15.0.8303/8.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.macos/15.0.8303/WorkloadManifest.json
   Install Type:        FileBased

 [ios]
   Installation Source: SDK 8.0.400
   Manifest Version:    18.0.8303/8.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.ios/18.0.8303/WorkloadManifest.json
   Install Type:        FileBased

 [maccatalyst]
   Installation Source: SDK 8.0.400
   Manifest Version:    18.0.8303/8.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.maccatalyst/18.0.8303/WorkloadManifest.json
   Install Type:        FileBased

 [maui]
   Installation Source: SDK 8.0.400
   Manifest Version:    8.0.82/8.0.100
   Manifest Path:       /usr/local/share/dotnet/sdk-manifests/8.0.100/microsoft.net.sdk.maui/8.0.82/WorkloadManifest.json
   Install Type:        FileBased

======================================================

and should be compatible with Xcode 16.

But when I try and build a new .NET MAUI application, I'm getting a bunch o' error messages that I cannot decipher. It says I've got the wrong SDK Version, but instead of telling me what version it is, it's writing <DVTBuild Version *>, so I'm not sure what I need to do.

Here are the error messages:

/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk.net8.0_18.0/18.0.8303/tools/msbuild/iOS/Xamarin.Shared.targets(893,3): error : /usr/bin/xcrun exited with code 1 

[/Users/me/Desktop/MauiApp1/MauiApp1/MauiApp1.csproj::TargetFramework=net8.0-ios]
/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk.net8.0_18.0/18.0.8303/tools/msbuild/iOS/Xamarin.Shared.targets(893,3): error :          [/Users/me/Desktop/MauiApp1/MauiApp1/MauiApp1.csproj::TargetFramework=net8.0-ios]

/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk.net8.0_18.0/18.0.8303/tools/msbuild/iOS/Xamarin.Shared.targets(893,3): error : actool exited with code 1 [/Users/me/Desktop/MauiApp1/MauiApp1/MauiApp1.csproj::TargetFramework=net8.0-ios]

/usr/local/share/dotnet/packs/Microsoft.iOS.Sdk.net8.0_18.0/18.0.8303/tools/msbuild/iOS/Xamarin.Shared.targets(893,3): error :          [/Users/me/Desktop/MauiApp1/MauiApp1/MauiApp1.csproj::TargetFramework=net8.0-ios]

/Users/me/Desktop/MauiApp1/MauiApp1/obj/Debug/net8.0-ios/iossimulator-arm64/actool/cloned-assets/Assets.xcassets : actool error : No simulator runtime version from [<DVTBuildVersion 21C62>, <DVTBuildVersion 21E213>, <DVTBuildVersion 21F79>] available to use with iphonesimulator SDK version <DVTBuildVersion 22A3362> 

[/Users/me/Desktop/MauiApp1/MauiApp1/MauiApp1.csproj::TargetFramework=net8.0-ios]

Can someone please point me in the right direction? I really, really miss my iOS simulator:

Steps to Reproduce

  1. Create a new .NET MAUI app
  2. Choose iPhone 15 Pro Max
  3. Press F5

Did you find any workaround?

Not yet

Build logs

No response

rolfbjarne commented 3 days ago

The problem is that your macOS machine doesn't have the iOS platform component installed.

The platform component can be installed using Xcode, see here for a description: https://github.com/xamarin/xamarin-macios/wiki/Known-issues-in-.NET8#the-build-fails-with-no-simulator-runtime-version-from-