Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/dotnetGame/natsu-clr

il2cpp transpiler and runtime compatible with .Net Core
https://github.com/dotnetGame/natsu-clr

clr dotnet embbeded il2cpp msil transpiler

Last synced: about 1 month ago
JSON representation

il2cpp transpiler and runtime compatible with .Net Core

Lists

README

        

natsu-clr
===

## Introduction
## 简介

`natsu-clr` is an il2cpp transpiler and runtime compatible with .Net Core.

`natsu-clr` 是一个兼容 .Net Core 的 IL2CPP 编译器和运行时。

![Screenshots](doc/screenshot1.png)

## Features
- .Net Core 3.0 compatible
- Small memory footprint
- Very portable
- Easy to interop with C++
- Compile-time vtable and variable initializer
- Assembly-level compile without a full build of programs

## 特性
- .Net Core 3.0 兼容
- 极小内存占用
- 可移植性强
- 很容易和 C++ 互操作
- 编译期虚表和变量初始化
- 程序集级别编译,不需要整个程序全部编译

## Supported CLR Features
## 支持的 CLR 特性
- Array
- Delegate
- Exceptions
- Generic
- Explicit interface implementation
- Unsafe
- Internal Call
- Unicode
- Span
- Volatile and Interlocked
- Thread

## Currently unsupported features
## 当前不支持的特性
- Garbage Collection
- Reflection

## Build from source
## 从源码编译

Install .Net Core SDK 3.0 and CMake

1. Build compiler
```
dotnet build Natsu.sln
```

2. Run compiler to generate .h and .cpp
```
cd src/Natsu.Compiler/bin/Debug/netcoreapp3.0 && ./Natsu.Compiler
```

3. Build runtime and app
```
mkdir out && cd out
cmake .. -DCHINO_ARCH=Emulator -DCHINO_BOARD=Emulator -DCHINO_APP=Chino.Apps.Shell
```

## Roadmap
- [ ] Full support of standard libraries (Wellcome contributors!)

## 路线图
- [ ] 完整支持标准库 (欢迎贡献者!)