源码
Windows
- 环境:Requirements to build dotnet/runtime on Windows
- 编译
- Debug:
build.cmd mono+libs
- Release:
build.cmd mono+libs -c release
- Debug:
- include
artifacts/bin/mono/windows.x64.Debug/include
- dll
- Microsoft.NETCore.App.Runtime.Mono.win-x64,修改后缀为.zip,并解压
- 根据
runtimes/win-x64/lib/net8.0
筛选artifacts/bin/runtime/net8.0-windows-Debug-x64
中的dll artifacts/bin/mono/windows.x64.Debug/System.Private.CoreLib.dll
- lib
artifacts/obj/mono/windows.x64.Debug/out/lib
coreclr.dll
coreclr.import.lib
mono-component-debugger-static.lib
mono-component-debugger-stub-static.lib
mono-component-diagnostics_tracing-static.lib
mono-component-diagnostics_tracing-stub-static.lib
mono-component-hot_reload-static.lib
mono-component-hot_reload-stub-static.lib
mono-component-marshal-ilgen-static.lib
mono-component-marshal-ilgen-stub-static.lib
mono-profiler-aot.lib
monosgen-2.0.lib
Linux
- 环境:Requirements to build dotnet/runtime on Linux
- 编译选项:v8.0.5-Linux
- 编译
- Debug:
./build.sh mono+libs
- Release:
./build.sh mono+libs -c release
- Debug:
- include
artifacts/bin/mono/linux.x64.Debug/include
- dll
- Microsoft.NETCore.App.Runtime.Mono.linux-x64,修改后缀为.zip,并解压
- 根据
runtimes/linux-x64/lib/net8.0
筛选artifacts/bin/runtime/net8.0-linux-Debug-x64
中的dll artifacts/bin/mono/linux.x64.Debug/System.Private.CoreLib.dll
- lib
artifacts/obj/mono/linux.x64.Debug/out/lib
libcoreclr.so
libmono-component-debugger-static.a
libmono-component-debugger-stub-static.a
libmono-component-diagnostics_tracing-static.a
libmono-component-diagnostics_tracing-stub-static.a
libmono-component-hot_reload-static.a
libmono-component-hot_reload-stub-static.a
libmono-component-marshal-ilgen-static.a
libmono-component-marshal-ilgen-stub-static.a
libmono-profiler-aot.a
libmonosgen-2.0.a
artifacts/bin/runtime/net8.0-linux-Debug-x64
libSystem.Globalization.Native.a
libSystem.Native.so
macOS
- 环境:Requirements to build dotnet/runtime on macOS
- 编译
- Debug:
./build.sh mono+libs
- Release:
./build.sh mono+libs -c release
- Debug:
- include
artifacts/bin/mono/osx.x64.Debug/include
- dll
- Microsoft.NETCore.App.Runtime.Mono.maccatalyst-x64,修改后缀为.zip,并解压
- 根据
runtimes/maccatalyst-x64/lib/net8.0
筛选artifacts/bin/runtime/net8.0-osx-Debug-x64
中的dll artifacts/bin/mono/osx.x64.Debug/System.Private.CoreLib.dll
- lib
artifacts/obj/mono/osx.x64.Debug/out/lib
libmono-component-debugger-static.a
libmono-component-debugger-stub-static.a
libmono-component-diagnostics_tracing-static.a
libmono-component-diagnostics_tracing-stub-static.a
libmono-component-hot_reload-static.a
libmono-component-hot_reload-stub-static.a
libmono-component-marshal-ilgen-static.a
libmono-component-marshal-ilgen-stub-static.a
libmono-profiler-aot.a
libmonosgen-2.0.a
artifacts/bin/mono/osx.x64.Debug
libcoreclr.dylib
artifacts/bin/runtime/net8.0-osx-Debug-x64
libSystem.Globalization.Native.a
libSystem.Globalization.Native.dylib
libSystem.IO.Compression.Native.dylib
libSystem.IO.Ports.Native.dylib
libSystem.Native.dylib
libSystem.Net.Security.Native.dylib
libSystem.Security.Cryptography.Native.Apple.dylib
libSystem.Security.Cryptography.Native.OpenSsl.dylib
Android
- 环境:Testing Libraries on Android
- 编译
- Debug:
./build.sh mono+libs -os android -arch arm64
- Release:
./build.sh mono+libs -os android -arch arm64 -c release
- Debug:
- include
artifacts/bin/mono/android.arm64.Debug/include
- dll
- Microsoft.NETCore.App.Runtime.Mono.android-arm64,修改后缀为.zip,并解压
- 根据
runtimes/android-arm64/lib/net8.0
筛选artifacts/bin/runtime/net8.0-android-Debug-arm64
中的dll artifacts/bin/mono/android.arm64.Debug/System.Private.CoreLib.dll
- lib
artifacts/obj/mono/android.arm64.Debug/out/lib
libmono-component-debugger-static.a
libmono-component-debugger-stub-static.a
libmono-component-diagnostics_tracing-static.a
libmono-component-diagnostics_tracing-stub-static.a
libmono-component-hot_reload-static.a
libmono-component-hot_reload-stub-static.a
libmono-component-marshal-ilgen-static.a
libmono-component-marshal-ilgen-stub-static.a
libmonosgen-2.0.a
libmonosgen-2.0.so
artifacts/bin/runtime/net8.0-android-Debug-arm64
libSystem.Native.so
IOS
- 环境:Testing Libraries on iOS, tvOS, and MacCatalyst
- 编译选项:v8.0.5-IOS
- 编译
- Debug:
./build.sh mono+libs -os ios -arch arm64
- Release:
./build.sh mono+libs -os ios -arch arm64 -c release
- 拷贝
artifacts/obj/mono/System.Private.CoreLib/arm64/Debug/PreTrim/System.Private.CoreLib.dll
到artifacts/obj/mono/ios.arm64.Debug/cross/mono/mini/mono-aot-cross
./mono-aot-cross --aot=asmonly,static,interp System.Private.CoreLib.dll
xcrun -sdk iphoneos clang -arch arm64 -o System.Private.CoreLib.dll.o -c System.Private.CoreLib.dll.s
ar rcs System.Private.CoreLib.dll.a System.Private.CoreLib.dll.o
- Debug:
- include
artifacts/bin/mono/ios.arm64.Debug/include
- dll
- Microsoft.NETCore.App.Runtime.Mono.ios-arm64,修改后缀为.zip,并解压
- 根据
runtimes/ios-arm64/lib/net8.0
筛选artifacts/bin/runtime/net8.0-ios-Debug-arm64
中的dll artifacts/obj/mono/System.Private.CoreLib/arm64/Debug/PreTrim/System.Private.CoreLib.dll
- lib
artifacts/obj/mono/ios.arm64.Debug/out/lib
libmono-component-debugger-static.a
libmono-component-debugger-stub-static.a
libmono-component-diagnostics_tracing-static.a
libmono-component-diagnostics_tracing-stub-static.a
libmono-component-hot_reload-static.a
libmono-component-hot_reload-stub-static.a
libmono-component-marshal-ilgen-static.a
libmono-component-marshal-ilgen-stub-static.a
libmonosgen-2.0.a
artifacts/bin/runtime/net8.0-ios-Debug-arm64
libicudata.a
libicui18n.a
libicuuc.a
libSystem.Globalization.Native.a
libSystem.Globalization.Native.dylib
libSystem.IO.Compression.Native.dylib
libSystem.Native.dylib
libSystem.Net.Security.Native.dylib
libSystem.Security.Cryptography.Native.Apple.dylib
artifacts/obj/mono/ios.arm64.Debug/cross/mono/mini/mono-aot-cross
System.Private.CoreLib.dll.a
- Framework
- 新建
IOS
-Framework
Product
填写Mono
Language
选择Objective-C
- 不勾选
Include Tests
和Include Documentation
Minmum Deployments
选择14.0
Build Settings
-Library Search Paths
-Debug
选择*dylib
目录Build Phases
-Link Binary With Libraries
添加*dylib
General
-Frameworks and Libraries
-Embed
选择Embed & Sign
Build
选择Any IOS Device(arm64)
File
-Project Setting
-Advanced
-Custom
选择Relative to Workspace
Build/Products/Debug-iphones
新建Mono.embeddendframework
文件夹,拷贝Mono.framework
到Mono.embeddendframework
,压缩Mono.embeddendframework
- 新建