From Free Software Directory
Jump to: navigation, search

GNU Common C++
Highly portable C++ class library

Common C++ is a C++ class library that abstracts various system services in a portable manner, thereby making the creation of portable applications much easier. It is portable code, with very low runtime overhead, that works well on a very wide range of target platforms and C++ compilers in everyday use. It includes the 'ape' project, which was formerly a separate package. Common C++ manages threads, synchronization, and network sockets by offering portable C++ classes that abstract these services, as well as supporting "serial" I/O, daemon specific event logging, object serialization (persistence), block/record/page/ oriented file I/O, and configuration file parsing. It also provides an inheritable class architecture for your application that exploits C++ as needed. There are two source trees: one for "POSIX" systems such as GNU/Linux and the Hurd, the other for the Windows API. This makes Common C++ portable at the source level, as the two trees implement a functionally similar class interface.

Commoncpp also includes uCommon C++ (, a lightweight C++ library with features such as rtti and exception handling removed. It is intended for programs linking to C libraries and not the standard C++ library.


User guide included

Heckert gnu.small.png This is a GNU package:commoncpp


version 1.8.1 (stable)
released on 1 November 2010

VCS Checkout



LicenseVerified byVerified onNotes
License:GPLv2orlaterKelly Hopkins17 November 2009

Leaders and contributors

Caros Vidal Contributor
Daniel Silverstone Contributor
John Connors Contributor
Sean Cavanaugh Contributor
Yurii Rashkovskii Contributor
David Sugar Maintainer

Resources and communication

AudienceResource typeURI
uCommon C++Download
Bug Tracking,Developer,

Software prerequisites

Weak prerequisitepth

This entry (in part or in whole) was last reviewed on 21 January 2017.


"uCommon C++" is not in the list (General, Help, Bug Tracking, Support, Developer) of allowed values for the "Resource audience" property.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.