UCommon is a lightweight C++ library to facilitate using C++ design patterns even for very deeply embedded applications, such as for systems using uClibc along with POSIX threading support. For this reason, UCommon disables language features that consume memory or introduce runtime overhead. UCommon introduces some design patterns from Objective-C, such as reference counted objects, memory pools, and smart pointers. UCommon introduces some new concepts for handling of thread locking and synchronization.
| Tags | Software Development Libraries |
|---|---|
| Licenses | LGPL |
| Operating Systems | OS Independent |
| Implementation | C++ |
Recent releases


Release Notes: This release adds many bugfixes, particularly in respect to gnutls support and long-standing address list comparison operator issues.


Release Notes: A new version 6 API. A complete refactor of most core classes for greater consistency and simplicity. Many depreciated methods and conventions have been removed.


Release Notes: Starting with version 5 of GNU uCommon, inheritability of ucommon thread classes were extended, and what used to be known separately as GNU Common C++ is now merged into and included as part of the ucommon package, using ucommon core classes. GNU uCommon is now also required to support GNU CCRTP (and libzrtpcpp) version 2.0 and later. The latest release of ucommon (5.0.2) adds support for OpenSSL FIPS compliance and a portable cryptographic archiver.


Release Notes: C++ generics were introduced. Improvements were made to the cmake build system. Separation of containers was done.


Release Notes: The entire API was reorganized, in part focusing on the formal introduction of "protocols", a concept borrowed from Objective-C and similar languages. A number of new utilities have also been introduced to securely erase individual files and to explicitly destroy forensically useful meta-data.