Skip to content

[Test] BuildBasicApplicationAndAotProfileIt fails on macOS CI: aprofutil exits with code 127 #11718

Description

@jonathanpeppers

Context

The BuildBasicApplicationAndAotProfileIt test in tests/MSBuildDeviceIntegration/Tests/AotProfileTests.cs is failing on macOS CI lanes with exit code 127 (command not found) from aprofutil:

/Users/runner/work/1/s/bin/Release/dotnet/packs/Microsoft.Android.Sdk.Darwin/37.0.0-ci.pr.gh11477.0/tools/Xamarin.Android.Application.targets(81,5): error MSB3073:
The command ""/Users/runner/.nuget/packages/mono.aotprofiler.android/9.0.0-preview1/tools/aprofutil" -s -v -p 9349 -o "custom.aprof"" exited with code 127.

Suspected cause

Exit code 127 on Unix means the shell could not find / could not execute the binary. The aprofutil shipped in the mono.aotprofiler.android 9.0.0-preview1 NuGet is likely:

  1. An x64 binary that no longer runs on the new macOS-15 hosted images (Apple Silicon by default, Rosetta missing or behaving differently), or
  2. A Mono.Posix / dylib dependency that is no longer present on macOS-15

The test was disabled in #11477 so the rest of the suite can move forward. Re-enable once aprofutil is updated for macOS-15 / Apple Silicon.

Repro

Run on macOS CI after #11708 (macOS-15 hosted images bump):

./dotnet-local.sh test bin/TestRelease/MSBuildDeviceIntegration/net11.0/MSBuildDeviceIntegration.dll --filter Name=BuildBasicApplicationAndAotProfileIt

What to do here

  • Update mono.aotprofiler.android to a build whose aprofutil works on macOS-15
  • Remove the [Ignore] attribute on BuildBasicApplicationAndAotProfileIt

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageIssues that need to be assigned.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions