Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

libc status

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.