Skip to content

[BUG]: macos-15 - error: unable to find utility "actool", not a developer tool or in PATH #5414

@IeuanWalker

Description

@IeuanWalker

What happened?

Updating our .NET MAUI project from .NET 9 to .NET 10

The pipeline sets the xcode version that maui requires -

    - script: |
        echo Mac OS version:
        sw_vers -productVersion
        echo
        echo Installed Xcode versions:
        ls /Applications | grep 'Xcode'
        echo
        echo Installed Xcode full paths:
        find /Applications/ -name "Xcode*.app" -type d
        echo
        echo currently selected xcode:
        xcrun xcode-select --print-path
        echo
        echo selecting latest xcode...
        sudo xcode-select -s /Applications/Xcode_26.1.app
        sudo xcode-select -switch /Applications/Xcode_26.1.app/Contents/Developer
        xcrun xcode-select --print-path
        xcodebuild -version
      displayName: Select Xcode Version

But when it goes to build the .net maui app, using this step -

    - script: |
        dotnet publish $(System.DefaultWorkingDirectory)/src/App/App.csproj -f $(FRAMEWORK_IOS) -c Release /p:ArchiveOnBuild=true /p:MtouchUseLlvm=true
      displayName: Build iOS App Binaries

It throws this error straight away -

Finished external tool execution #1 in 00:00:04.1631010 and with exit code 72.
  xcrun: error: sh -c '/Applications/Xcode_26.1.app/Contents/Developer/usr/bin/xcodebuild -sdk /Applications/Xcode_26.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -find actool 2> /dev/null' failed with exit code 16384: (null) (errno=Invalid argument)
  xcrun: error: unable to find utility "actool", not a developer tool or in PATH
  
/Users/runner/hostedtoolcache/dotnet/packs/Microsoft.iOS.Sdk.net10.0_26.1/26.1.10494/tools/msbuild/Xamarin.Shared.targets(1034,3): error : /usr/bin/xcrun exited with code 72: [/Users/runner/work/1/s/src/App/App.csproj::TargetFramework=net10.0-ios]
/Users/runner/hostedtoolcache/dotnet/packs/Microsoft.iOS.Sdk.net10.0_26.1/26.1.10494/tools/msbuild/Xamarin.Shared.targets(1034,3): error : xcrun: error: sh -c '/Applications/Xcode_26.1.app/Contents/Developer/usr/bin/xcodebuild -sdk /Applications/Xcode_26.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -find actool 2> /dev/null' failed with exit code 16384: (null) (errno=Invalid argument) [/Users/runner/work/1/s/src/App/App.csproj::TargetFramework=net10.0-ios]
/Users/runner/hostedtoolcache/dotnet/packs/Microsoft.iOS.Sdk.net10.0_26.1/26.1.10494/tools/msbuild/Xamarin.Shared.targets(1034,3): error : xcrun: error: unable to find utility "actool", not a developer tool or in PATH [/Users/runner/work/1/s/src/App/App.csproj::TargetFramework=net10.0-ios]
/Users/runner/work/1/s/src/App/obj/Release/net10.0-ios/ios-arm64/actool/cloned-assets/Assets.xcassets : error : xcrun: error: sh -c '/Applications/Xcode_26.1.app/Contents/Developer/usr/bin/xcodebuild -sdk /Applications/Xcode_26.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -find actool 2> /dev/null' failed with exit code 16384: (null) (errno=Invalid argument) [/Users/runner/work/1/s/src/App/App.csproj::TargetFramework=net10.0-ios]
/Users/runner/work/1/s/src/App/obj/Release/net10.0-ios/ios-arm64/actool/cloned-assets/Assets.xcassets : error : xcrun: error: unable to find utility "actool", not a developer tool or in PATH [/Users/runner/work/1/s/src/App/App.csproj::TargetFramework=net10.0-ios]
/Users/runner/work/1/s/src/App/obj/Release/net10.0-ios/ios-arm64/actool/cloned-assets/Assets.xcassets : error :  [/Users/runner/work/1/s/src/App/App.csproj::TargetFramework=net10.0-ios]
/Users/runner/hostedtoolcache/dotnet/packs/Microsoft.iOS.Sdk.net10.0_26.1/26.1.10494/tools/msbuild/Xamarin.Shared.targets(1034,3): error : actool exited with code 72 [/Users/runner/work/1/s/src/App/App.csproj::TargetFramework=net10.0-ios]
Exception: System.Xml.XmlException: Root element is missing.
   at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.ThrowWithoutLineInfo(String res)
   at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
   at System.Xml.XmlReader.ReadToDescendant(String name)
   at Xamarin.MacDev.PropertyListFormat.XmlFormat.StartReading(Stream input) in /Users/builder/azdo/_work/1/s/macios/external/Xamarin.MacDev/Xamarin.MacDev/PListObject.cs:line 1865
/Users/runner/hostedtoolcache/dotnet/packs/Microsoft.iOS.Sdk.net10.0_26.1/26.1.10494/tools/msbuild/Xamarin.Shared.targets(1034,3): error : Failed to load actool log file `obj/Release/net10.0-ios/ios-arm64/actool/asset-manifest.plist`: Failed to parse PList data type:  [/Users/runner/work/1/s/src/App/App.csproj::TargetFramework=net10.0-ios]

Only changes to the pipeline is the xcode version (16.2 -> 26.1) and the .net sdk thats installed (9 -> 10). Everything builds and runs fine locally, just getting this tool issue building in the app via the pipeline

Versions

macos-15 -

Agent name: 'Hosted Agent'
Agent machine name: 'Mac-1764596815747'
Current agent version: '4.264.2'
Runner Image Provisioner
Operating System
Runner Image
Current image version: '20251126.0042'
Agent running as: 'runner'

Environment type (Please select at least one enviroment where you face this issue)

  • Self-Hosted
  • Microsoft Hosted
  • VMSS Pool
  • Container

Azure DevOps Server type

dev.azure.com (formerly visualstudio.com)

Azure DevOps Server Version (if applicable)

No response

Operation system

No response

Version controll system

No response

Relevant log output

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions