KnightOS's C library
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
src Fix broken strncmp implementation Feb 19, 2019
.gitignore Added draw_line, renamed draw_string_return_point Oct 22, 2015
Makefile Add uchar2fs from SDCC Nov 9, 2018


This is KnightOS's shared C library. Note that it is not compliant with any particular standard and doesn't even slightly resemble POSIX. That being said, where POSIX and KnightOS have similar functions, our libc does implement some of the things you'd find in a POSIX-compliant OS.


First, install the KnightOS SDK.

$ knightos init
$ make


Use make package to get a package that you can install.


There are several codebases put together into this one. There is the KnightOS portion, which is licensed under the highly permissive MIT license, per the usual KnightOS fare. Additionally, standard C libraries and low level support (ala libgcc) is included here under the GPL license, and in some cases effectively public domain. The oddly licensed code is under src/gpl/ and each file details the licensing considerations within the file itself. Please note that the GPL-ed portions have a linking exception, which means that you are free to link with them without inheriting the GPL for your own programs.

Help, Bugs, Feedback

If you need help with KnightOS, want to keep up with progress, chat with developers, or ask any other questions about KnightOS, you can hang out in the IRC channel: #knightos on

To report bugs, please create a GitHub issue or contact us on IRC.

If you'd like to contribute to the project, please see the contribution guidelines.