English [en]

Associate members power up the Free Software Foundation. Help smash our goal of 700 new members or donate by December 31st!



GNU Common C++

Starting with the 3.0 release, future work in GNU ccScript and ccAudio have been consolidated with GNU uCommon C++ to produce a single framework. This simplifies producing class documentation for the entire framework, which can be produced all at once. There will be a focus on applied cryptography and cryptographic stacks in GNU uCommon C++ releases later this year as a foundation for standardizing development of secure services.

GNU uCommon C++ originally started as a smaller embedded library as well as to try and improve support for both ipv4 and ipv6 socket addressing in GNU Common C++ itself, and with a specific focus on design patterns and generic containers. The newer GNU uCommon C++ will effectively replace the original GNU Common C++ codebase over time, and most new development is happening there, but we will continue to maintain the original GNU Common C++ codebase, which is long considered stable, especially for bugsfixes. GNU uCommon C++ is licensed using the GNU GPL V3 or later.

What is GNU Common C++ and GNU uCommon C++?

GNU Common C++ and GNU uCommon C++ are both very portable and highly optimized class framework for writing C++ applications that need to use threads and support concurrent synchronization, and that use sockets, XML parsing, object serialization, thread-optimized String and data structure classes, etc. This framework offers a class foundation that hides platform differences from your C++ application so that you need not write platform specific code. GNU uCommon C++ has been ported to compile natively on most platforms which support either posix threads, or on maybe be used with Debian hosted mingw32 and mingw64 to build native threading applications for Microsoft Windows users.

GNU uCommon C++ can also be used to construct embedded applications as part of GNU Telephony Open Embedded. GNU uCommon C++ currently offers a complete runtime C++ library environment for developing deeply embedded targets without requiring the use of the ANSI C++ standard library, rtti, exception handling, or STL templates. GNU Common C++ and GNU uCommon C++ will both build on all versions of GCC from 2.95 through 4.5, and with many other C++ compilers as well.

Get the Software

GNU Common C++ and GNU uCommon may be found at ftp.gnu.org or downloaded directly from our Download Page. GNU Common C++ "2" releases are currently licensed using the GNU General Public License Version 2 or later with runtime exception. GNU uCommon is licensed using the GNU General Public License Version 3 or later.

Support and Other Resources

To simplify management and bug tracking for the different packages I currently maintain, I have consolidated management of GNU Common C++, related GNU Common C++ packages, and GNU Telephony projects including GNU Bayonne. These are being managed on subversion through the GNU Telephone subsystem on Savannah. This may soon be migrated to our own bugzilla host on the GNU Telephony website.

The following GNU mailing list has been set up for GNU [u]Common C++:

We also maintain a GNU Telephony wiki.

Related Projects

The following projects are known to use GNU Common C++:

CVS Access

These instructions are available for anonymous cvs access.

Contact information

The current maintainer for this package is <dyfet at gnu dot org>


 [FSF logo] “Our mission is to preserve, protect and promote the freedom to use, study, copy, modify, and redistribute computer software, and to defend the rights of Free Software users.”

The Free Software Foundation is the principal organizational sponsor of the GNU Operating System. Support GNU and the FSF by buying manuals and gear, joining the FSF as an associate member, or making a donation, either directly to the FSF or via Flattr.