-
Notifications
You must be signed in to change notification settings - Fork 760
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[MacOS] The AOT compiler '' does not exist. #9093
Comments
Thanks for the instructions and binlogs. I'll ask a look ASAP... At first glance it seems something inside the msbuild files must be incorrect, like not guarded by a proper condition.
[1] unlike other Xamarin workloads. Even the new macCatalyst support is based on the Mono runtime as it requires Full AOT to be able to submit applications (not possible with CoreCLR). [2] that might change in the future, net7.0 adds support for Native AOT - but I'm not sure it's compatible with macOS yet. |
The attached
There's no mention of Maybe it's a different file ? Can you try again and upload the correct one ? Thanks! |
For this I ran:
|
Same result - but now I know why :) The IOW what happened in step 2 will not be part of the binlog. To get the AOT error inside the binlog you need to do
for your step 2. The And there's no step 3! If you do it then it would overwrite the FWIW you should not have to use |
Sorry about that. Here is the corrected build log. |
The but none of the condition seems to allow that <PropertyGroup Condition="'$(_RunAotCompiler)' == ''">
<!-- Don't run the AOT compiler by default -->
<_RunAotCompiler>false</_RunAotCompiler>
<!-- We need it for device builds for mobile platforms -->
<_RunAotCompiler Condition="'$(_SdkIsSimulator)' != 'true' And '$(_PlatformName)' != 'macOS' And '$(_PlatformName)' != 'MacCatalyst'">true</_RunAotCompiler>
<!-- We need it if the interpreter is enabled, no matter where -->
<_RunAotCompiler Condition="'$(MtouchInterpreter)' != ''">true</_RunAotCompiler>
<!-- We need it for Mac Catalyst on arm64 -->
<_RunAotCompiler Condition="'$(RuntimeIdentifier)' == 'maccatalyst-arm64'">true</_RunAotCompiler>
<!-- We need it for iOS/tvOS simulator on arm64 -->
<_RunAotCompiler Condition="'$(RuntimeIdentifier)' == 'iossimulator-arm64' Or '$(RuntimeIdentifier)' == 'tvossimulator-arm64'">true</_RunAotCompiler>
</PropertyGroup> Step by step
so the final value should be As a temporary workaround can you try to add the following XML inside your .csproj file ? <PropertyGroup>
<MtouchInterpreter></MtouchInterpreter>
</PropertyGroup> That should empty the variable and take precedence over the Unrelated / Side note
You can add |
This happens because of <!-- Required for C# Hot Reload -->
<UseInterpreter Condition="'$(Configuration)' == 'Debug' and '$(TargetFramework)' != 'net6.0-maccatalyst'">True</UseInterpreter> inside while it's commented inside At least in theory I also did not hit this issue personally because I'm doing benchmarks and always uses |
It's not clear why the interpreter was disabled for macCatalyst (which is mono based) inside 1e252d5 |
@bstrother1 an alternative (easier) workaround is to delete <UseInterpreter Condition="'$(Configuration)' == 'Debug' and '$(TargetFramework)' != 'net6.0-maccatalyst'">True</UseInterpreter> inside your |
Attempted: Still running into AOT bug. Are you running from Visual Studios with the release version or the command line? Attempting to run TestApplication.Mobile > Release > My Mac results in Done building project "TestApplication.Mobile.csproj" -- FAILED. |
TestApplication/TestApplication.Mobile/Resources/values/resources_resw-strings.xml: Error APT2126: file not found. (APT2126) (TestApplication.Mobile) |
Did removing
Can you attach a newer binlog ? thanks! |
@spouliot The interpreter has some issues with trampolines management: dotnet/runtime#68808. |
Ran dotnet build -c Release TestApplication.Mobile -t:Run -f net6.0-macos -bl and it built. This seems to be specific running it within Visual Studios. |
Current behavior
Getting The AOT compiler '' does not exist. When trying to run MacOS after following (#7833). Attached is the MSBuild binlog. I'm on the latest uno-check: v1.5.0.0 Uno-template: 4.4.0-dev.302, everything passes with green outside of recommending Download .NET SDK (6.0.400-preview.22301.10)
msbuild.binlog.zip
Expected behavior
For MacOS to build
How to reproduce it (as minimally and precisely as possible)
-Be on latest Uno Check/Template
-Make Project
-Try to build MacOS
Workaround
N/A
Works on UWP/WinUI
Yes
Environment
Uno.UI / Uno.UI.WebAssembly / Uno.UI.Skia
NuGet package version(s)
PackageReference Include="Uno.UI" Version="4.4.0-dev.302"
PackageReference Include="Uno.UI.RemoteControl" Version="4.4.0-dev.302 Condition="'$(Configuration)'=='Debug'"
PackageReference Include="Uno.UI.Adapter.Microsoft.Extensions.Logging" Version="4.4.0-dev.302"
PackageReference Include="Microsoft.Extensions.Logging" Version="5.0.0"
PackageReference Include="Microsoft.Extensions.Logging.Console" Version="5.0.0"
Affected platforms
macOS
IDE
Visual Studio 2022
IDE version
17.3 Preview (17.3 build 1038)
Relevant plugins
No response
Anything else we need to know?
This is occurring on an ARM64 environment and occurs both when building using Visual Studios and When running from the command line. MacCatalyst does build from the command line but there doesn't
seem to be a way to specify to run Catalyst from Visual Studios.
The text was updated successfully, but these errors were encountered: