Skip to content

Using libsos on a Mac Catalyst app (built with CoreCLR) fails with "Failed to load data access module, 0x80004002" #5912

Description

@rolfbjarne

Description

Using libsos on a Mac Catalyst app (built with CoreCLR) fails with:

Failed to load data access module, 0x80004002

To repro, install .NET 11 preview 5 and:

dotnet workload install maccatalyst
mkdir sos-maccatalyst
cd sos-maccatalyst
dotnet new maccatalyst
dotnet build
lldb -- bin/Debug/net11.0-maccatalyst/maccatalyst-arm64/sos-maccatalyst.app/Contents/MacOS/sos-maccatalyst
(lldb) plugin load /Users/rolf/.dotnet/sos/libsosplugin.dylib
(lldb) run
(lldb) <ctrl-c at some point>
(lldb) clrstack
Failed to load data access module, 0x80004002
Can not load or initialize libmscordaccore.dylib. The target runtime may not be initialized.

For more information see https://go.microsoft.com/fwlink/?linkid=2135652
ClrStack  failed

Configuration

macOS 26.5.1 (Tahoe), M2 Pro (ARM64)

(lldb) sosstat
Target OS: OSX Architecture: Arm64 ProcessId: 66500 (0x103C4)
    #0 .NET Core runtime 11.0.26.30315 at 0000000100A64000 size 004DC000 index be5a19368985322ea69ba41c1a3dbf50
    Runtime module path: /Users/rolf/test/bugs/sos-maccatalyst/bin/Debug/net11.0-maccatalyst/maccatalyst-arm64/sos-maccatalyst.app/Contents/MonoBundle/libcoreclr.dylib
    DAC: /Users/rolf/test/bugs/sos-maccatalyst/bin/Debug/net11.0-maccatalyst/maccatalyst-arm64/sos-maccatalyst.app/Contents/MonoBundle/libmscordaccore.dylib (don't verify)
        Exports:
            DotNetRuntimeInfo: <NO SYMBOL>
            g_dacTable: 0000000100F0E398
            DotNetRuntimeDebugHeader: <NO SYMBOL>
            DotNetRuntimeContractDescriptor: 0000000100F0A248
SpecialDiagInfoHeader   : 7FFFFFFF10000000 <NONE>
Settings:
-> Use CDAC contract reader: False
-> Force use CDAC contract reader: False
-> DAC signature verification check enabled: False
Current symbol store settings:
Extensions loaded:
-> 9.0.661903+d7b455b46332b31fd9ba3a3f3e020387984c511a /Users/rolf/.dotnet/sos/Microsoft.Diagnostics.ExtensionCommands.dll
Host runtime .NET 9.0.15 on Darwin 25.5.0 Darwin Kernel Version 25.5.0: Mon Apr 27 20:39:09 PDT 2026; root:xnu-12377.121.6~2/RELEASE_ARM64_T6020 Arm64
GC memory usage for managed SOS components: 3,682,744 bytes
dotnet --info
.NET SDK:
 Version:           11.0.100-preview.5.26302.115
 Commit:            f7b4c5716f
 Workload version:  11.0.100-preview.5.26309.3
 MSBuild version:   18.8.0-preview-26302-115+f7b4c5716

Runtime Environment:
 OS Name:     Mac OS X
 OS Version:  26.5
 OS Platform: Darwin
 RID:         osx-arm64
 Base Path:   /Users/rolf/Library/Application Support/dotnet/sdk/11.0.100-preview.5.26302.115/

.NET workloads installed:
 [macos]
   Installation Source: SDK 11.0.100-preview.5
   Manifest Version:    26.5.11546-net11-p5/11.0.100-preview.5
   Manifest Path:       /Users/rolf/Library/Application Support/dotnet/sdk-manifests/11.0.100-preview.5/microsoft.net.sdk.macos/26.5.11546-net11-p5/WorkloadManifest.json
   Install Type:        FileBased

 [ios]
   Installation Source: SDK 11.0.100-preview.5
   Manifest Version:    26.5.11546-net11-p5/11.0.100-preview.5
   Manifest Path:       /Users/rolf/Library/Application Support/dotnet/sdk-manifests/11.0.100-preview.5/microsoft.net.sdk.ios/26.5.11546-net11-p5/WorkloadManifest.json
   Install Type:        FileBased

 [maccatalyst]
   Installation Source: SDK 11.0.100-preview.5
   Manifest Version:    26.5.11546-net11-p5/11.0.100-preview.5
   Manifest Path:       /Users/rolf/Library/Application Support/dotnet/sdk-manifests/11.0.100-preview.5/microsoft.net.sdk.maccatalyst/26.5.11546-net11-p5/WorkloadManifest.json
   Install Type:        FileBased

 [maui]
   Installation Source: SDK 11.0.100-preview.5
   Manifest Version:    11.0.0-preview.5.26304.4/11.0.100-preview.5
   Manifest Path:       /Users/rolf/Library/Application Support/dotnet/sdk-manifests/11.0.100-preview.5/microsoft.net.sdk.maui/11.0.0-preview.5.26304.4/WorkloadManifest.json
   Install Type:        FileBased

Configured to use workload sets when installing new manifests.

Host:
  Version:      11.0.0-preview.5.26302.115
  Architecture: arm64
  Commit:       f7b4c5716f

.NET SDKs installed:
  10.0.301 [/Users/rolf/Library/Application Support/dotnet/sdk]
  11.0.100-preview.5.26302.115 [/Users/rolf/Library/Application Support/dotnet/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 10.0.9 [/Users/rolf/Library/Application Support/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 11.0.0-preview.5.26302.115 [/Users/rolf/Library/Application Support/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 10.0.9 [/Users/rolf/Library/Application Support/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 11.0.0-preview.5.26302.115 [/Users/rolf/Library/Application Support/dotnet/shared/Microsoft.NETCore.App]

Other architectures found:
  x64   [/usr/local/share/dotnet/x64]
    registered at [/etc/dotnet/install_location_x64]

Environment variables:
  DOTNET_CLI_TELEMETRY_OPTOUT              [1]
  DOTNET_ROOT                              [/Users/rolf/Library/Application Support/dotnet]

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download

Regression?

Probably not, because building Mac Catalyst apps with CoreCLR is new.

Other information

Terminal log: https://gist.github.com/rolfbjarne/b456aef303c25012f0b320a463e19345

App bundle: sos-maccatalyst-dotnet-diagnostics-5912.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    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