C/C++ Programming Libraries
ICU
International Components for Unicode is a portable set of IBM Unicode
globalization libraries for C/C++ and Java. ICU includes support for
locale sensitive string comparison; date, time, number, currency, and
message formatting; character set conversion; and additional features.
It is avaliable under the X license, which is apparently compatible
with the GPL license, although not copyleft. See the website for more
details.
ImageLib: An Image Processing C++ Class Library
ImageLib is a C++ class library providing image processing and related
facilities. The main set of classes provides a variety of image and
vector types, with additional modules supporting scalar and vector
quantisation, wavelet transforms, DCT transforms, and simple histogram
operations.
PNGwriter
PNGwriter is a C++ library for creating PNG images. PNGwriter is a very
easy to use open source graphics library that uses PNG as its output
format. The interface has been designed to be as simple and intuitive
as possible. It supports plotting and reading in the RGB (red, green,
blue), HSV (hue, saturation, value/brightness) and CMYK (cyan, magenta,
yellow, black) colour spaces, basic shapes, scaling, bilinear
interpolation, full TrueType antialiased and rotated text support,
bezier curves, opening existing PNG images and more. Documentation in
English and Spanish. Runs under Linux, Unix, Mac OS X and Windows.
Requires libpng and optionally FreeType2 for the text support.
CImg Library - C++ Template Image Processing Library
The CImg Library is a C++ toolkit providing simple classes and
functions to load, save, process and display images in your own C++
code. It is highly portable and fully works on Unix/X11, Windows and
MacOS X operating systems. It contains useful image processing
algorithms for loading/saving, resizing/rotating, filtering, object
drawing (text, lines, faces, ellipses,..), etc...
Boost.org
The Boost web site provides free peer-reviewed portable C++ source
libraries. The emphasis is on libraries which work well with the C++
Standard Library. The libraries are intended to be widely useful, and
are in regular use by thousands of programmers across a broad spectrum
of applications.
The freeodbc++ project
Libodbc++ is a c++ class library for accessing SQL databases. It is
designed with standards in mind, so it provides a subset of the
well-known JDBC 2.0(tm) and runs on top of ODBC. It is distributed
under the LGPL. The library has shown to compile and work on Linux,
FreeBSD and win32 platforms. Any environment with a reasonable
compiler, standard c++ library and ODBC Driver Manager should do.
EzBasic library
EzBasic is an application development framework to develop projects in
C++. The framework can be used to make programs using functions similar
to Visual Basic*. The framework classes range from GUI, File Handling,
Threads, String, Active-X just to name some of the important classes.
And the best part is that it is free to use in your non commercial
projects.
AxPipe - C++ Binary Stream Class Library
AxPipe - A binary stream abstraction C++ class framework for efficient
implementation of both push and pull-model filters and all kinds of
sources and sinks. Implementation-transparent optional multi-threading.
Efficient reference-counted buffer handling.
GQL - Generic SQL Library
This is the homepage af the GQL Project - just another attempt to
create a generic SQL interface for Linux/UNIX platforms. The CLI (call
level interface) library GQL, provides an abstraction of a SQL
database, which means it is a general API for all (or most) possible
SQL databases. It achieves this by using individual drivers for
different databases. GQL is implemented in C++, so its native interface
is C++ also.
Database Template Library
"The goal of this library is to make ODBC recordsets look just like an
STL container. What is more, we do this portably so the abstraction can
run on multiple platforms and C++ compilers. As a user, you can move
through our containers using standard STL iterators; and if you
insert(), erase() or replace() records in our containers changes can be
automatically migrated to the database for you."
FreeType 2 (free font library)
FreeType 2 is a software font engine that is designed to be small,
efficient, highly customizable and portable while capable of producing
high-quality output (glyph images). It can be used in graphics
libraries, display servers, font conversion tools, text image
generation tools, and many other products as well.
GNU lightning
GNU lightning is a library that generates assembly language code at
run-time; it is very fast, making it ideal for Just-In-Time compilers,
and it abstracts over the target CPU.
GradC++Toolbox
GradC++Toolbox is a joined package composed by several
platform-independet components for command line parsing, debug and info
messages starting and stopping of threads and so on.
Matrix Template Library (MTL)
The Matrix Template Library (MTL) is a high-performance generic
component library that provides comprehensive linear algebra
functionality for a wide variety of matrix formats.
A garbage collector for C and C++
The Boehm-Demers-Weiser conservative garbage collector can be used as a
garbage collecting replacement for C malloc or C++ new. It allows you
to allocate memory basically as you normally would, without explicitly
deallocating memory that is no longer useful. The collector
automatically recycles memory when it determines that it can no longer
be otherwise accessed. Alternatively, the garbage collector may be used
as a leak detector for C or C++ programs, though that is not its
primary goal.
Graph Template Library GTL
GTL, the Graph Template Library GTL can be seen as an extension of the
Standard Template Library STL to graphs and fundamental graph
algorithms.
The Standard Function Library
The SFL (Standard Function Library) from iMatix is a portable function
library for C/C++ programs. The SFL is the result of many years
development, and is provided as Open Source software for the benefit of
the Internet community.
Matrix TCL Pro
Matrix TCL Pro is a matrix template class library for performing matrix
algebra calculations in C++ programs in easy and efficient manner for
engineering / scientific works.
ClanLib
ClanLib is a medium level development kit. At its lowest level, it
provides a platform independent (as much as that is possible in C++)
way of dealing with display, sound, input, networking, files,
threadding and such.
GNet
GNet is a simple network library. It is written in C, object-oriented,
and built upon GLib. It is intended to be small, fast, easy-to-use, and
easy to port.
MyLibC
MyLibC is a glibc clone for windows.
ebase - embedded C++ database library
"A portable, lightweight, and flexible C++ library that provides
reliable persistent storage. It is well suited for embedded systems,
personal digital appliances and small-scale database need on web."
IO95, a Win95 LFN API wrapper library
This library contains functions to access the LFN API Win95 offers in
the DOSbox, it can help to make a program LFN-aware quicklier.
TidyLib
A library form of HTML Tidy (C) has been created to make it easier to incorporate Tidy into other software.
CGAL
The goal of CGAL is to make the most important of the solutions and
methods developed in computational geometry available to users in
industry and academia in a C++ library.
http://www.datareel.com/
"DataReel is a collection of C/C++ libraries used to rapidly develop
and deploy multi-threaded database and communications applications."
G2D
A freeware 2D library for C++ with full example game and source code, online and downloadable documentation.
BBDSoft
Several C++ class libraries developed by BBDSoft are available for download. Complete source code included.
omniORB
omniORB is a robust high performance CORBA ORB for C++ and Python.
uClibc
uClibc is a C library for developing embedded Linux systems.
GetPot
Parsing comand line arguments and configuration files.
ncurses 5.2
The Ncurses (new curses) library is a free software emulation of curses
in System V Release 4.0, and more. It uses Terminfo format, supports
pads and color and multiple highlights and forms characters and
function-key mapping, and has all the other SYSV-c
GSL - The GNU Scientific Library
The GNU Scientific Library (GSL) is a modern numerical library for C
and C++ programmers. The routines have been written from scratch by the
GSL team in ANSI C.
libsmi
The core of the libsmi distribution is a library that allows management applications to access SMI MIB module definitions.
SparseLib++
SparseLib++ is a C++ class library for efficient sparse matrix computations across various computational platforms.
Dxstore Database System
The Dxstore Database System is a database management system for Linux,
FreeBSD, and other operating systems. In the tradition of dbm/ndbm, it
is distributed as an embeddable C or C++ library and shares with them
the model of a database as a collection of key/value pairs
Introduction to the Standard Template Library
Programmer's guide and download link for the STL.
Views - a C++ Standard Template Library extension
The C++ Standard Template Library provides templates that define
generic container and iterator classes. The software extends the STL by
adding template classes that define views.
Ensemble
Ensemble is the next generation of the Horus group communication
toolkit. Developed at Cornell University, as well as at the Hebrew
University of Jerusalem.
IML++ (Iterative Methods Library) v. 1.2a
IML++ is a C++ templated library of modern iterative methods for
solving both symmetric and nonsymmetric linear systems of equations. |