Libraries are already written pieces of code that you can reuse in your project. You don't have to write everything by yourself, perhaps you can use something that already exists and is tested, maintained and developed by others.

Misc C++ Libraries

boost

A collection of very handy libraries. Many of them may be included in the next C++ Standard

License: Boost Software License

loki

This library is made up of some design pattern implementations and generic programming methodologies as described in the book "Modern C++ Design" by Andrei Alexandrescu.

License: MIT

Adobe Source Libraries (ASL)

ASL provides peer-reviewed and portable C++ source libraries. The libraries are intended to be widely useful, leveraging and extending both the C++ Standard Library and the Boost Libraries

License: MIT License

cpp-lib

Small collection of C++ components---a config file reader, dynamically dimensioned tables, 3D geometry, etc.

License: LGPL

C++ GUI Libraries

GUI is the "Graphical User Interface". Something that Windows comes with by default. In Linux and *NIX, it's most often done using the X11 architecture.

Portable Toolkits

gtkmm

A C++ Wrapper for the famous Gimp Toolkit. Gtkmm adheres strictly to standard C++ and intends to have a good clean interface, providing no macros or language extensions. It also operates well with standard C++ library containers. With GTK+'s extensive theming capabilities, gtkmm widgets can mimic the exact native widget look. It comes with a visual editor called glademm, and there is also a new RAD tool for it called Gideon

License: LGPL

Qt

Qt is Qt/MOC based GUI Toolkit. It is popular (KDE uses it for its GUI API) despite the fact that it inserts language extensions into C++. It is free on *nix and there is a prebuilt full MinGW open source version available for windows. Qt comes with a great GUI editor Qt Designer to speed up development.

License: QPL or GPL or a commercial license

wxWidgets

wxWidgets is a portable GUI with additional tools like network access, simple HTML, own strings with COW gives you a single API for writing GUI applications on multiple platforms, using native GUI widgets and dialogs whenever possible. It uses WinAPI on windows, GTK+ on Linux and so on. It also have own wxUniversal widgets with own themes (under development now - 2006-11). In an attempt to be as portable as possible, the library does not make use of any advanced C++ features (but is not hard to combine with advanced C++ program that uses shared pointers strings and such).

License: wxWindows License (similar to L-GPL)

Fast Light ToolKit

FLTK (pronounced "fulltick") is a cross-platform C++ GUI toolkit for UNIX®/Linux® (X11), Microsoft® Windows®, MacOS® X and AmigaOS®. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL® and its built-in GLUT emulation. FLTK is designed to be small and modular enough to be statically linked, but works fine as a shared library. FLTK also includes an excellent UI builder called FLUID that can be used to create applications in minutes.

License: LGPL* . with exceptions that allow for static linking.

Fox Toolkit

Another C++ GUI Toolkit (insert experiences here -- good, bad?)

License: LGPL

Socket libraries

http://asio.sourceforge.net/

asio

http://www.cs.wustl.edu/~schmidt/ACE.html

ACE

http://www.dtilib.dk/download/default.asp

DTIlib

http://directory.fsf.org/CppSockets.html

C++ sockets

http://www.linuxhacker.at/socketxx

Socket++

Game making stuff

http://www.libsdl.org

Simple Direct Media layer. It's simple if you know C

http://alleg.sf.net

Allegro game library (is the huge community page)

Web-programming with C++

http://www.tntnet.org

fast Web-application-server for c++

gSOAP

C++ bindings for working with SOAP, an XML-based communication language for HTTP. This can be used to interface with the Google API.

http://witty.sf.net/

Wt seems to be directed at writing AJAX applications with C++

C++ Libs (last edited 2008-04-30 15:43:48 by 193)