User Tools

Site Tools



The Public Domain C Library


PDCLib is aiming at providing a fully conforming implementation of the C standard library (as defined by ISO/IEC 9899), under the licensing terms of CC0 -- "No rights reserved".

PDCLib is a project predicated on the belief that some building blocks are so fundamental that they should be available freely - free of restrictions, free of license boilerplate and free of politics.

Unfortunately, in the modern world this turns out to be difficult: the sum of rights that one must waive is large and complex, and in some countries (e.g. Germany) it is not even possible for an author to assign their work to the Public Domain.

As a result, we have done the closest thing possible: placed PDCLib under Creative Commons Zero. This means that we have waived as many applicable rights as possible under law, and whenever the law has prevented us from waiving said rights, we grant you a license to use PDCLib, in whole or in part, as you choose, with no restrictions.


Information on the development status of the two branches of PDCLib, repositories etc. is summarized on Get the Source. There is also a development blog being maintained.

Issues & Feature Requests

You may use the GitHub issue tracker regarding any issues and feature requests.

Note that at this point feature requests which do not correspond to the roadmap for the next version of PDCLib are unlikely to be accepted, though patches and submissions likely will as long as they align with project goals.


PDCLib is aimed at

  • Providing a C runtime library for new compilers,
  • Providing a C runtime library for embedded systems & new OSes
  • Providing a small, compact, strictly standards conforming C library for established platforms as an alternative to the libraries commonly used

It provides a good counterpart to projects like LLVM's libc++ C++ standard library and Pathscale's libcxxrt C++ runtime library. Most C apps, many C++ apps, and both of the above libraries depend heavily upon the C standard library. It is the aim of the PDCLib project to provide the best implementation of that.


PDCLib was originally created by Martin “Solar” Baute in 2002. In 2012, after 10 years, he retired from the project, and Erin Shepherd took over.

In 2018, Martin Baute took PDCLib back under his wing again. (Thank you to Rink Springer for the motivation – again. ;-) )

pdclib/start.txt · Last modified: 2019/07/18 11:03 by solar