README.md 1.37 KB
Newer Older
Yonggang Luo's avatar
Yonggang Luo committed
1
2
3
4
# rulibc
rulibc is a portable POSIX C standard library written in Rust. It is under heavy development, and currently supports Windows, Linux and Redox.
This is the fork of relibc(https://github.com/redox-os/relibc) for more focusing on win32/linux support.
Other platform may also considerte if anybody interested to contribute.
SamwiseFilmore's avatar
SamwiseFilmore committed
5

Yonggang Luo's avatar
Yonggang Luo committed
6
7
8
9
10
11
12
13
14
15
glibc/musl alternative on linux world.

redox support will alomost unchanged with the upstream  https://github.com/redox-os/relibc

The motivation for this project is:
 - Create a safer alternative to a C standard library written in C.
 - On Windows, as a alternative to msvcrt/mingw32 crt, but also support for possible posix api, it's can be used
   cl/gcc/clang on windows
 - On Linux, remove the need of musl/glibc, and create glibc compatiable api set. It supports linux syscalls via the [sc](https://crates.io/crates/sc) crate.
 - Reduce issues the redox crew was having with newlib,
SamwiseFilmore's avatar
SamwiseFilmore committed
16

17
### [Contributing](CONTRIBUTING.md)
18

19
20
## Supported OSes

Yonggang Luo's avatar
Yonggang Luo committed
21
 - Windows
22
 - Linux
Yonggang Luo's avatar
Yonggang Luo committed
23
 - Redox OS
24
25
26
27
28

## Supported architectures

 - x86\_64
 - Aarch64
Yonggang Luo's avatar
Yonggang Luo committed
29
30
31
32
33
34

### Notice
 The main branch are not stable, will rebase on the upstream perdically
 use `git fetch --force` to sync with the main branch.
 The release branch will keep stable

Yonggang Luo's avatar
Yonggang Luo committed
35
36
37
## Developing
```
cargo install --force cargo-make
38
39
40
41
42
43
44
45
46
```
Build debug version
```
cargo make build
```
Build release version
```
cargo make build --profile production
```