Skip to content

The command "emcc --version" exited with code 1 #62237

@enricobenedos

Description

@enricobenedos

Describe the bug

We are publishing our Blazor WASM app using Docker (Linux environment) and when we choose to build it using AOT we receive the below error:

/usr/share/dotnet/packs/Microsoft.NET.Runtime.WebAssembly.Sdk/6.0.0/Sdk/WasmApp.Native.targets(424,5): error MSB3073: The command "emcc --version" exited with code 1. [/src/FmsAgvGui/FmsAgvGui.csproj]

To Reproduce

Publish Blazor WASM app using docker with sdk:6.0 image.

This is our Dockerfile:

FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /src
COPY ["MyProj/MyProj.csproj", "MyProj/"]

RUN dotnet workload install wasm-tools 
RUN dotnet restore "MyProj/MyProj.csproj"
COPY . .
WORKDIR "/src/MyProj"
RUN dotnet build "MyProj.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "MyProj.csproj" -c Release -o /app/publish

FROM fholzer/nginx-brotli:v1.19.1 AS final
WORKDIR /var/www/html
COPY --from=publish /app/publish/wwwroot .
COPY MyProj/nginx.conf /etc/nginx/nginx.conf

Exceptions (if any)

Blazor wasm tools installation logs:

RUN dotnet workload install wasm-tools
 ---> Running in 5351862f968d
Skip NuGet package signing validation. NuGet signing validation is not available on Linux or macOS https://aka.ms/workloadskippackagevalidation .
Updated advertising manifest microsoft.net.workload.mono.toolchain.
Updated advertising manifest microsoft.net.sdk.macos.
Updated advertising manifest microsoft.net.sdk.maccatalyst.
Updated advertising manifest microsoft.net.workload.emscripten.
Updated advertising manifest microsoft.net.sdk.android.
Updated advertising manifest microsoft.net.sdk.maui.
Updated advertising manifest microsoft.net.sdk.tvos.
Updated advertising manifest microsoft.net.sdk.ios.
Installing workload manifest microsoft.net.sdk.macos version 12.0.101-preview.10.251…
Installing workload manifest microsoft.net.sdk.tvos version 15.0.101-preview.10.251…
Installing workload manifest microsoft.net.sdk.maccatalyst version 15.0.101-preview.10.251…
Installing workload manifest microsoft.net.sdk.android version 31.0.101-preview.10.59…
Installing workload manifest microsoft.net.sdk.maui version 6.0.101-preview.10.2068…
Installing workload manifest microsoft.net.sdk.ios version 15.0.101-preview.10.251…
Installing pack Microsoft.NET.Runtime.WebAssembly.Sdk version 6.0.0...
Writing workload pack installation record for Microsoft.NET.Runtime.WebAssembly.Sdk version 6.0.0...
Installing pack Microsoft.NETCore.App.Runtime.Mono.browser-wasm version 6.0.0...
Writing workload pack installation record for Microsoft.NETCore.App.Runtime.Mono.browser-wasm version 6.0.0...
Installing pack Microsoft.NETCore.App.Runtime.AOT.Cross.browser-wasm version 6.0.0...
Writing workload pack installation record for Microsoft.NETCore.App.Runtime.AOT.Cross.browser-wasm version 6.0.0...
Installing pack Microsoft.NET.Runtime.MonoAOTCompiler.Task version 6.0.0...
Writing workload pack installation record for Microsoft.NET.Runtime.MonoAOTCompiler.Task version 6.0.0...
Installing pack Microsoft.NET.Runtime.MonoTargets.Sdk version 6.0.0...
Writing workload pack installation record for Microsoft.NET.Runtime.MonoTargets.Sdk version 6.0.0...
Installing pack Microsoft.NET.Runtime.Emscripten.Node version 6.0.0...
Writing workload pack installation record for Microsoft.NET.Runtime.Emscripten.Node version 6.0.0...
Installing pack Microsoft.NET.Runtime.Emscripten.Sdk version 6.0.0...
Writing workload pack installation record for Microsoft.NET.Runtime.Emscripten.Sdk version 6.0.0...
Garbage collecting for SDK feature band(s) 6.0.100...
Successfully installed workload(s) wasm-tools.
Removing intermediate container 5351862f968d
 ---> 129e583326f1

Failed publish:

RUN dotnet publish "MyProjGui.csproj" -c Release -o /app/publish
 ---> Running in eb7094f4368a
Microsoft (R) Build Engine version 17.0.0+c9eb9dd64 for .NET
Copyright (C) Microsoft Corporation. All rights reserved.
  Determining projects to restore...
  All projects are up-to-date for restore.
  MyProjGui -> /src/MyProjGui/bin/Release/net6.0/MyProjGui.dll
  MyProjGui (Blazor output) -> /src/MyProjGui/bin/Release/net6.0/wwwroot
  Optimizing assemblies for size, which may change the behavior of the app. Be sure to test after publishing. See: https://aka.ms/dotnet-illink
  Optimizing assemblies for size, which may change the behavior of the app. Be sure to test after publishing. See: https://aka.ms/dotnet-illink
  AOT'ing 108 assemblies
  [1/107] System.Collections.Specialized.dll -> System.Collections.Specialized.dll.bc
  [2/107] Blazored.LocalStorage.dll -> Blazored.LocalStorage.dll.bc
  [3/107] FCSBlazorHelpers.dll -> FCSBlazorHelpers.dll.bc
  [4/107] System.Collections.dll -> System.Collections.dll.bc
  [5/107] FCSFrontendAuthentication.dll -> FCSFrontendAuthentication.dll.bc
  [6/107] MyProjShared.dll -> MyProjShared.dll.bc
  [7/107] System.ComponentModel.Annotations.dll -> System.ComponentModel.Annotations.dll.bc
  [8/107] System.ComponentModel.Primitives.dll -> System.ComponentModel.Primitives.dll.bc
  [9/107] Microsoft.AspNetCore.Authorization.dll -> Microsoft.AspNetCore.Authorization.dll.bc
  [10/107] System.ComponentModel.TypeConverter.dll -> System.ComponentModel.TypeConverter.dll.bc
  [11/107] System.ComponentModel.dll -> System.ComponentModel.dll.bc
  [12/107] System.Console.dll -> System.Console.dll.bc
  [13/107] System.Core.dll -> System.Core.dll.bc
  [14/107] Microsoft.AspNetCore.Components.dll -> Microsoft.AspNetCore.Components.dll.bc
  [15/107] Microsoft.AspNetCore.Components.Authorization.dll -> Microsoft.AspNetCore.Components.Authorization.dll.bc
  [16/107] Microsoft.AspNetCore.Components.Forms.dll -> Microsoft.AspNetCore.Components.Forms.dll.bc
  [17/107] Microsoft.AspNetCore.Components.Web.dll -> Microsoft.AspNetCore.Components.Web.dll.bc
  [18/107] System.Data.Common.dll -> System.Data.Common.dll.bc
  [19/107] System.Diagnostics.TraceSource.dll -> System.Diagnostics.TraceSource.dll.bc
  [20/107] System.Drawing.Primitives.dll -> System.Drawing.Primitives.dll.bc
  [21/107] Microsoft.AspNetCore.Components.WebAssembly.dll -> Microsoft.AspNetCore.Components.WebAssembly.dll.bc
  [22/107] System.Drawing.dll -> System.Drawing.dll.bc
  [23/107] System.IO.Compression.dll -> System.IO.Compression.dll.bc
  [24/107] Microsoft.AspNetCore.Components.WebAssembly.Authentication.dll -> Microsoft.AspNetCore.Components.WebAssembly.Authentication.dll.bc
  [25/107] Microsoft.AspNetCore.Connections.Abstractions.dll -> Microsoft.AspNetCore.Connections.Abstractions.dll.bc
  [26/107] Microsoft.AspNetCore.Http.Connections.Client.dll -> Microsoft.AspNetCore.Http.Connections.Client.dll.bc
  [27/107] Microsoft.AspNetCore.Http.Connections.Common.dll -> Microsoft.AspNetCore.Http.Connections.Common.dll.bc
  [28/107] Microsoft.AspNetCore.Metadata.dll -> Microsoft.AspNetCore.Metadata.dll.bc
  [29/107] Microsoft.AspNetCore.SignalR.Client.dll -> Microsoft.AspNetCore.SignalR.Client.dll.bc
  [30/107] Microsoft.AspNetCore.SignalR.Client.Core.dll -> Microsoft.AspNetCore.SignalR.Client.Core.dll.bc
  [31/107] Microsoft.AspNetCore.SignalR.Common.dll -> Microsoft.AspNetCore.SignalR.Common.dll.bc
  [32/107] Microsoft.AspNetCore.SignalR.Protocols.Json.dll -> Microsoft.AspNetCore.SignalR.Protocols.Json.dll.bc
  [33/107] Microsoft.AspNetCore.WebUtilities.dll -> Microsoft.AspNetCore.WebUtilities.dll.bc
  [34/107] Microsoft.Extensions.Configuration.dll -> Microsoft.Extensions.Configuration.dll.bc
  [35/107] Microsoft.Extensions.Configuration.Abstractions.dll -> Microsoft.Extensions.Configuration.Abstractions.dll.bc
  [36/107] Microsoft.Extensions.Configuration.Json.dll -> Microsoft.Extensions.Configuration.Json.dll.bc
  [37/107] Microsoft.Extensions.DependencyInjection.dll -> Microsoft.Extensions.DependencyInjection.dll.bc
  [38/107] Microsoft.Extensions.DependencyInjection.Abstractions.dll -> Microsoft.Extensions.DependencyInjection.Abstractions.dll.bc
  [39/107] Microsoft.Extensions.Features.dll -> Microsoft.Extensions.Features.dll.bc
  [40/107] Microsoft.Extensions.Localization.dll -> Microsoft.Extensions.Localization.dll.bc
  [41/107] Microsoft.Extensions.Localization.Abstractions.dll -> Microsoft.Extensions.Localization.Abstractions.dll.bc
  [42/107] Microsoft.Extensions.Logging.dll -> Microsoft.Extensions.Logging.dll.bc
  [43/107] Microsoft.Extensions.Logging.Abstractions.dll -> Microsoft.Extensions.Logging.Abstractions.dll.bc
  [44/107] Microsoft.Extensions.Options.dll -> Microsoft.Extensions.Options.dll.bc
  [45/107] Microsoft.Extensions.Primitives.dll -> Microsoft.Extensions.Primitives.dll.bc
  [46/107] Microsoft.IdentityModel.JsonWebTokens.dll -> Microsoft.IdentityModel.JsonWebTokens.dll.bc
  [47/107] Microsoft.IdentityModel.Logging.dll -> Microsoft.IdentityModel.Logging.dll.bc
  [48/107] System.Linq.Expressions.dll -> System.Linq.Expressions.dll.bc
  [49/107] System.Linq.Queryable.dll -> System.Linq.Queryable.dll.bc
  [50/107] System.Linq.dll -> System.Linq.dll.bc
  [51/107] System.Memory.dll -> System.Memory.dll.bc
  [52/107] System.Net.Http.Json.dll -> System.Net.Http.Json.dll.bc
  [53/107] Microsoft.IdentityModel.Tokens.dll -> Microsoft.IdentityModel.Tokens.dll.bc
  [54/107] System.Net.Http.dll -> System.Net.Http.dll.bc
  [55/107] System.Net.Primitives.dll -> System.Net.Primitives.dll.bc
  [56/107] System.Net.Requests.dll -> System.Net.Requests.dll.bc
  [57/107] System.Net.Security.dll -> System.Net.Security.dll.bc
  [58/107] System.Net.Sockets.dll -> System.Net.Sockets.dll.bc
  [59/107] Microsoft.JSInterop.dll -> Microsoft.JSInterop.dll.bc
  [60/107] System.Net.WebSockets.Client.dll -> System.Net.WebSockets.Client.dll.bc
  [61/107] System.Net.WebSockets.dll -> System.Net.WebSockets.dll.bc
  [62/107] Microsoft.Net.Http.Headers.dll -> Microsoft.Net.Http.Headers.dll.bc
  [63/107] System.ObjectModel.dll -> System.ObjectModel.dll.bc
  [64/107] System.Private.Runtime.InteropServices.JavaScript.dll -> System.Private.Runtime.InteropServices.JavaScript.dll.bc
  [65/107] System.Private.Uri.dll -> System.Private.Uri.dll.bc
  [66/107] System.Private.Xml.Linq.dll -> System.Private.Xml.Linq.dll.bc
  [67/107] NetTopologySuite.dll -> NetTopologySuite.dll.bc
  [68/107] NetTopologySuite.Features.dll -> NetTopologySuite.Features.dll.bc
  [69/107] NetTopologySuite.IO.GeoJSON4STJ.dll -> NetTopologySuite.IO.GeoJSON4STJ.dll.bc
  [70/107] System.IdentityModel.Tokens.Jwt.dll -> System.IdentityModel.Tokens.Jwt.dll.bc
  [71/107] System.IO.Pipelines.dll -> System.IO.Pipelines.dll.bc
  [72/107] Telerik.DataSource.dll -> Telerik.DataSource.dll.bc
  [73/107] Telerik.Documents.SpreadsheetStreaming.dll -> Telerik.Documents.SpreadsheetStreaming.dll.bc
  [74/107] Telerik.Recurrence.dll -> Telerik.Recurrence.dll.bc
  [75/107] System.Private.Xml.dll -> System.Private.Xml.dll.bc
  [76/107] System.Runtime.CompilerServices.Unsafe.dll -> System.Runtime.CompilerServices.Unsafe.dll.bc
  [77/107] System.Runtime.InteropServices.RuntimeInformation.dll -> System.Runtime.InteropServices.RuntimeInformation.dll.bc
  [78/107] System.Runtime.Loader.dll -> System.Runtime.Loader.dll.bc
  [79/107] System.Runtime.Numerics.dll -> System.Runtime.Numerics.dll.bc
  [80/107] System.Runtime.Serialization.Formatters.dll -> System.Runtime.Serialization.Formatters.dll.bc
  [81/107] System.Runtime.Serialization.Primitives.dll -> System.Runtime.Serialization.Primitives.dll.bc
  [82/107] System.Runtime.dll -> System.Runtime.dll.bc
  [83/107] System.Security.Claims.dll -> System.Security.Claims.dll.bc
  [84/107] System.Security.Cryptography.Algorithms.dll -> System.Security.Cryptography.Algorithms.dll.bc
  [85/107] System.Security.Cryptography.Cng.dll -> System.Security.Cryptography.Cng.dll.bc
  [86/107] System.Security.Cryptography.Csp.dll -> System.Security.Cryptography.Csp.dll.bc
  [87/107] System.Security.Cryptography.Encoding.dll -> System.Security.Cryptography.Encoding.dll.bc
  [88/107] System.Security.Cryptography.Primitives.dll -> System.Security.Cryptography.Primitives.dll.bc
  [89/107] System.Security.Cryptography.X509Certificates.dll -> System.Security.Cryptography.X509Certificates.dll.bc
  [90/107] System.Text.Encoding.Extensions.dll -> System.Text.Encoding.Extensions.dll.bc
  [91/107] System.Text.Encodings.Web.dll -> System.Text.Encodings.Web.dll.bc
  [92/107] System.Text.Json.dll -> System.Text.Json.dll.bc
  [93/107] System.Text.RegularExpressions.dll -> System.Text.RegularExpressions.dll.bc
  [94/107] System.Threading.Channels.dll -> System.Threading.Channels.dll.bc
  [95/107] System.Threading.ThreadPool.dll -> System.Threading.ThreadPool.dll.bc
  [96/107] System.Threading.dll -> System.Threading.dll.bc
  [97/107] System.dll -> System.dll.bc
  [98/107] netstandard.dll -> netstandard.dll.bc
  [99/107] Telerik.Blazor.dll -> Telerik.Blazor.dll.bc
  [100/107] Telerik.Zip.dll -> Telerik.Zip.dll.bc
  [101/107] System.Private.CoreLib.dll -> System.Private.CoreLib.dll.bc
  [102/107] MyProjGui.dll -> MyProjGui.dll.bc
  [103/107] Microsoft.CSharp.dll -> Microsoft.CSharp.dll.bc
  [104/107] Microsoft.Win32.Primitives.dll -> Microsoft.Win32.Primitives.dll.bc
  [105/107] System.Buffers.dll -> System.Buffers.dll.bc
  [106/107] System.Collections.Concurrent.dll -> System.Collections.Concurrent.dll.bc
  [107/107] System.Collections.NonGeneric.dll -> System.Collections.NonGeneric.dll.bc
/usr/share/dotnet/packs/Microsoft.NET.Runtime.WebAssembly.Sdk/6.0.0/Sdk/WasmApp.Native.targets(424,5): error MSB3073: The command "emcc --version" exited with code 1. [/src/MyProjGui/MyProjGui.csproj]
The command '/bin/sh -c dotnet publish "MyProjGui.csproj" -c Release -o /app/publish' returned a non-zero code: 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    arch-wasmWebAssembly architecturearea-Build-mononeeds-further-triageIssue has been initially triaged, but needs deeper consideration or reconsideration

    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