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.

Source & Status

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

Building & Porting

You can find information on building PDClib in the wiki. Instructions on porting can also be found there

Issues & Feature Requests

You may send mail at regarding any issues and feature requests. An online bug tracker was removed, as I could not be bothered to cut all the red tape associated with the new EU privacy laws. (A bug tracker allowing you to create a personalized account is different from this website's wiki, which does not allow visitors to create their own account, and thus does not collect personalized data.)

Note that, at the present moment in time, feature requests which do not correpsond 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 the 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/06/04 14:37 by solar