[sdks] add .gitignore python __pycache__ (#17414)
[mono-project.git] / netcore / README.md
blob98fe7dddf240d1f41aa75f023402b5a81d370fc2
1 # Introduction
3 Netcore support in mono consists of two parts:
4 * The runtime compiled in netcore mode
5 * An implementation of System.Private.CoreLib
7 # Building
9 Everything below should be executed with the current dir set to 'netcore'.
11 For bootstrap, do
12         ./build.sh
14 To rebuild the runtime, do
15         make runtime
17 To rebuild System.Private.CoreLib, do
18         make bcl
20 These two targets will copy the results into shared/Microsoft.NETCore.App/<version>.
22 # Running with netcore
24 ## Running through the 'dotnet' tool.
26 Run ```dotnet publish -c Release -r osx-x64``` to create a published version of the app.
27 Copy
28 ```mono/mini/.libs/libmonosgen-2.0.dylib```
29 into
30 ```bin/netcoreapp3.0/osx-x64/publish/libcoreclr.dylib```
31 Copy
32 ```netcore/System.Private.CoreLib/bin/x86/System.Private.CoreLib.{dll,pdb}```
34 ```bin/netcoreapp3.0/osx-x64/publish```
36 ## Running with the mono runtime executable
38 DYLD_LIBRARY_PATH=shared/Microsoft.NETCore.App/<dotnet version> MONO_PATH=shared/Microsoft.NETCore.App/<dotnet version> ../mono/mini/mono-sgen --assembly-loader=strict sample/HelloWorld/bin/netcoreapp3.0/HelloWorld.dll
40 ## How to set up managed debugging
42 Change the DebugType to full in your .csproj
43         <DebugType>full</DebugType>
44 Enable debugger agent using the environment variable MONO_ENV_OPTIONS
45         export MONO_ENV_OPTIONS="--debug --debugger-agent=transport=dt_socket,address=127.0.0.1:1235,server=y,suspend=y"
46 Run 
47         ./dotnet --fx-version "5.0.0-alpha1.19409.2" sample/HelloWorld/bin/netcoreapp3.0/HelloWorld.dll