Core: Unable to run Hello World on .NET Core 3 on WSL2 (Ubuntu 18.04)

Created on 24 Sep 2019  路  4Comments  路  Source: dotnet/core

Hello World is not building on .NET Core 3.0 on WSL2 (Ubuntu 18.04)

I tried running Hello World sample on .NET Core 3 on WSL2
I am getting following error on dotnet run
vanand@In-vanand:/mnt/c/Users/vanand/myApp$ ls Program.cs bin myApp.csproj obj vanand@In-vanand:/mnt/c/Users/vanand/myApp$ dotnet run /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: The "CreateAppHost" task failed unexpectedly. [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: System.IO.IOException: Invalid argument [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedView.CreateView(SafeMemoryMappedFileHandle memMappedFileHandle, MemoryMappedFileAccess access, Int64 requestedOffset, Int64 requestedSize) [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at System.IO.MemoryMappedFiles.MemoryMappedFile.CreateViewAccessor(Int64 offset, Int64 size, MemoryMappedFileAccess access) [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.<>c__DisplayClass2_0.<CreateAppHost>g__RewriteAppHost|0() [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at Microsoft.NET.HostModel.RetryUtil.RetryOnIOError(Action func) [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at Microsoft.NET.HostModel.AppHost.HostWriter.CreateAppHost(String appHostSourceFilePath, String appHostDestinationFilePath, String appBinaryFilePath, Boolean windowsGraphicalUserInterface, String assemblyToCopyResorcesFrom) [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at Microsoft.NET.Build.Tasks.CreateAppHost.ExecuteCore() [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at Microsoft.NET.Build.Tasks.TaskBase.Execute() [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [/mnt/c/Users/vanand/myApp/myApp.csproj] /usr/share/dotnet/sdk/3.0.100/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.targets(370,5): error MSB4018: at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [/mnt/c/Users/vanand/myApp/myApp.csproj] The build failed. Fix the build errors and run again.

General

.NET Core version: 3.0
Operating system version: Windows 10 Enterprise (Build 18985)
Tried building on WSL2 (Ubuntu 18.04)

Code

Following Hello World tutorial from
https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/intro

A similar question is asked by another user on SO
https://stackoverflow.com/questions/58037223/cannot-build-net-core-in-wsl-with-mount-volume.

I tried the same thing in windows and it works fine

Most helpful comment

I think it's an issue about WSL2, maybe you can try creating your project in ~ instead of /mnt

All 4 comments

I think it's an issue about WSL2, maybe you can try creating your project in ~ instead of /mnt

I think it's an issue about WSL2, maybe you can try creating your project in ~ instead of /mnt

Issue for me is using /mnt/{drive}

changed project to be under ~/test and it works

boooooooo for wsl2 issue
but +1 for workaround

Did anyone file an issue on WSL 2 for this? I cannot find one, but I don't want to duplicate.

I got the same issue on WSL2 when a project with target framework 3.0 in /mnt/xxxx , but it is ok with target framework 2.2.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

tai-yi picture tai-yi  路  4Comments

leo2d picture leo2d  路  3Comments

ugurcemozturk picture ugurcemozturk  路  3Comments

ffes picture ffes  路  3Comments

sravan1022 picture sravan1022  路  4Comments