Skip to content
您位于: home » 信息技术 » Free C++ Projects
  您没有登录 登录 注册

导航
 
 

Free C++ Projects

Table of Contents

  1. Documentation
  2. Portals
  3. Generic Libraries
  4. Script Integration Libraries
  5. Text Manipulation Libraries
  6. Threading, Signalling and Parallel-Programming Libraries
  7. Numerical, Algorithmic and Crypto Libraries
  8. Network and Web Programming Libraries
  9. Multimedia Libraries
  10. File Format Libraries
  11. GUI Libraries
  12. Device Access Libraries
  13. Testing and Debugging Libraries
  14. Database Engine/Interface Libraries
  15. Science Libraries
  16. Financial Libraries
  17. GCC Compiler
  18. Other Compilers
  19. Developer Applications
  20. User Applications
  21. Books

Documentation

Portals

Generic Libraries

  • Libstdc++

    GNU Standard C++ Library. Fairly complete implementation of the ISO 14882 Standard C++ library document. See chapters 17 through 27 and annex D. License: GPL. (cvs) (ml)

  • Boost

  • Collection of portable libraries, aimed at standard library compliancy and integration. License: diverse, but see the Boost license requirements. (cvs) (ml)

  • STLport

    Portable STL implementation. Features provided: thread safety, exception safety, hash tables, singly-linked list, rope. The STLport Consulting company can give commercial support services for STLport users. License: STLport License.

  • OpenTop

    Portable OS facility abstractions framework modelled after the Sun Java API. OpenTop provides: networking, multi-threading, Unicode support and memory management. License: GPL.

  • GNU Common C++ (cvs) (ml)

    High-level OS facility abstractions framework. See also: ccRTP Real Time Protocol implementation, ccAudio Audio manipulation library, ccScript Library for creating a virtual machine execution system. License: GPL.

  • AAPL

    C++ template library similar to the the STL, but aims to be more flexible than a typical STL implementation. The AAPL data structures do not have private data members, to give more control to the programmer. License: LGPL.

  • PTypes

  • Portable Types Library. Simple alternative to the STL that includes multi-threading and networking. Other features: dynamic strings, character sets, lists and other basic data types along with threads, synchronization objects, IP sockets and named pipes. License: BSD-style. (cvs)

  • Loki

    Library with implementations of common design patterns and idioms. License: BSD-style. (cvs)

  • CSer

  • Serialization/persistence library, useful for writing out objects to a file and reuse these later on. License: LGPL. (cvs)

  • ACE

    Adaptive Communication Environment. Very heavy and high-level "OS facility abstractions framework" for complex communication applications. Provided functionality: sockets, threading, concurrency, IPC, shared memory, event demultiplexing mechanisms, filesystem mechanisms and explicit dynamic linking. License: ACE and TOA License. (cvs) (ml)

  • Frost UDS

    Useful Development Stuff. Library provides: Memory leak detection, memory usage logging, backtrace at runtime, POSIX threads and sockets. License: GPL.

  • Rudiments

    Library providing base classes for: daemons, clients and servers, and wrapper classes for C API's such as regular expressions, semaphores and signal handling. License: LGPL.

  • SWL

    SurakWare Base Library. Library which provides an abstract layer to the key system routines as well as utility modules, STL addons, and other useful classes for solving common tasks. License: LGPL. (cvs)

  • NB++

    Nuts-and-bolts C++ toolkit. Collection of OS facility abstraction classes, providing: Sockets, threads, regular expressions, daemons, command-line parsing, configuration file handling and event dispatching. Inactive project. License: LGPL. (cvs)

  • libferris

    Virtual file system library that runs in user-space. An application can dynamically link to libferris in order to see the file system through a virtual file system interface. License: GPL. (cvs) (ml)

Script Integration Libraries

  • Simkin (Library for using XML based scripting. License: LGPL) (ml)
  • c++ruby (Library to embed the Ruby interpreter in C++ applications. License: Ruby or GPL)
  • uCXX (Library to incorporate both compiled and scripting plugins into C++ programs. License: LGPL) (cvs) (ml)

  • LibTPT (LibTPT is a template scripting language implemented in C++, designed to be integrated with C++ programs. The script-language is based on PML (a.k.a. Pubaj). License: BSD-style) (cvs) (ml)
  • GNU CommonC++ ccScript (Library for creating a virtual machine execution system. License: GPL)
  • Carrot (Apache module for C++ based web server side scripting with flexible diagramming requirements. License: ?)

Text Manipulation Libraries

  • PCRE++ (Regular expression engine. This is a wrapper library for "PCRE", the Perl Compatible Regular Expressions library in C. License: LGPL)
  • TRE (POSIX compliant regular expression engine. License: GPL)
  • Regexx (Regular expression engine. License: LGPL)
  • Regex+ (Regular expression engine from the Boost project. License: BSD-style)

  • xmlwrapp (Wrapper library which provides a simpler interface for the libxml2 XML parser library. License: BSD-style) (cvs) (ml)
  • Xalan-C++ (XLST compiler for XML documents. It includes Xerces-C++, which is a validating XML parser library. License: BSD-style)
  • Arguments (STL based command-line argument processing library. License: GPL)
  • Clo++ (XML based command-line argument processing library. License: BSD-style) (source code)

  • wwtxt (Library for parsing and manipulation of XML and CSS data. License: GPL)
  • libxml++ (C++ wrapper library for GNOME's libxml library, which can be used for for parsing and writing of XML data. License: LGPL) (cvs)
  • log4cpp (Flexible logging to files, syslog, IDSA and other destinations) (cvs) (ml)

Threading, Signalling and Parallel-Programming Libraries

  • C++ Threads (Threading library for GNU/Linux. License: GPL) (cvs)
  • ZThread (Threading library for POSIX-compatible & M$ W32 systems. License: LGPL) (API doc)
  • PVM++ (Parallel programming library for PVM. License: LGPL) (cvs)

  • Libsigc++ (Callback function library for use in widget libraries, abstract interfaces, and generic programming. License: LGPL) (ml)
  • ITC (Inter-thread Communication System. POSIX threading modelled wrapper API for calling functions in other threads. License: LGPL)
  • DM1 (Threading library for POSIX-compatible & M$ W32 systems. License: LGPL)

Numerical, Algorithmic and Crypto Libraries

  • GSL (GNU Scientific Library. A numerical library with a C and C++ API, which currently provides more than a 1000 mathematical functions. License: GPL) (cvs) (ml)
  • Gambit (Library for simulating/analysing game theory. Gambit includes a wxWindows based user tool. Lifecnse: GPL) (cvs) (ml)
  • CLN (Library for numerical formats. License: GPL)
  • MPFR (Library for multiple-precision floating-point computations with exact rounding. MPFR is based on the GMP multiple-precision library and could replace the MPF functionality in further releases of GMP. License: LGPL)
  • MTL (Matrix Template Library. Provides linear algebra functionality for a variety of matrix formats. License: modified artistic license) (ml)
  • Blitz++ (Scientific computing library which provides dense arrays and vectors, random number generators, and small vectors and matrices. License: GPL or the Blitz artistic license)
  • BoolStuff (Library for doing operations on boolean expression binary trees. License: GPL)

  • GraceTMPL (Library to save data as Grace 2D plot files, optionally using a template file. License: GPL) (cvs)
  • Crypto++ (Cryptographic schemes supported: RSA, DSA, Rijndael, IDEA, elliptic curve, and others. License: none, its mostly public domain, but some files are licensed BSD-style. For more see the copyright notice) (cvs)
  • libecc++ (Elliptic Curve Cryptography library. License: GPL) (cvs)

  • Botan (Cryptographic algorithm library. License: BSD-style) (ml)
  • Dimnum (Library for storage and manipulation of dimensionful numbers, as encountered in physics and engineering. License: GPL)
  • SIunits (Library for storage and manipulation of dimensionful numbers, as encountered in physics and engineering. License: BSD-style)
  • Purenum (Library for arbitrary precision bignum computing. License: none, it is public domain)

  • Math3D (Library for 3D computer graphics math. Inactive project. License: LGPL) (cvs) (ml)
  • PPL (Parma Polyhedra Library. Library for the manipulation of convex polyhedra. License: GPL) (cvs) (ml)
  • Goblin (Library for studying graph optimization and network programming problems, it includes a Tcl/Tk graph editor/viewer. License: LGPL)
  • Beagle (Evolutionary Computation framework) (ml)
  • LinAI (FORTRAN compatible linear algebra library. License: LGPL) (cvs) (ml)

  • DOLPHIN (Dynamic Object oriented Library for FINite element computation. License: GPL)
  • BuDDy (Library for binary decision diagramming. There is a BuDDy command-line front-end available called IBEN. License: BSD-style)
  • libaa (Affine Arithmetic library. License: GPL) (cvs)

  • libtour (Library which aims to be a generic solution for managing tournament information, like: rules, teams and time schedules. License: GPL)

Network and Web Programming Libraries

  • Netxx (Portable network programming library. License: BSD-style) (cvs) (ml)
  • WvStreams (Network programming library) (ml)
  • Poslib (DNS client & server library. License: GPL) (ml)
  • cgixx (Create CGI applications in C++ for HTTP servers. License: BSD-style) (cvs)
  • FreeCGI (Create CGI applications in C++ for HTTP servers. License: BSD-style)
  • CGIcc (Create CGI applications in C++ for HTTP servers. License: GPL) (cvs) (ml)
  • EasySoap++ (Simple Object Access Protocol (SOAP) library implementation. License: LGPL) (cvs) (ml)
  • gSOAP (Simple Object Access Protocol (SOAP) library implementation. License: gSOAP Public License)
  • CSE (Web application server for C++, based on MySQL and Apache v2. License: GPL)
  • OpenSAML (Library implementation of the SAML standard. SAML is used for the formation and exchange of authentication, attribute, and authorization data as XML. License: BSD-style)
  • NDS (Node Data System. Library for making data management of node objects easier. License: BSD-style)

  • XmlRpc++ (Library implementation of the XML-RPC protocol. License: LGPL) (cvs)
  • MICO (MIco is COrba. Free CORBA networking library implementation. License: LGPL) (ml)

Multimedia Libraries

- Audio Libraries

  • Audiere (High-level audio API, which can understand Ogg Vorbis, WAV, MOD, S3M, XM and IT. It supports DirectSound on M$ w32 and OSS on Un*x. License: LGPL) (cvs) (ml)
  • LiveMedia (Library set supporting multimedia streaming using RTP/RTCP and RTSP. License: LGPL) (ml)

  • JRTPLIB (Library supporting multimedia streaming using RTP/RTCP. License: BSD-style)
  • OpenAL++ (Spatial sound library based on OpenAL. Inactive project. License: LGPL)

- Image Manipulation Libraries

  • ...

- Video Libraries

  • IVF (Interactive Visualization Framework. Simple, portable, Op*nGL based visualisation framework. License: LGPL)
  • VXL (Computer vision library. License: BSD-style) (cvs) (ml)
  • OpenCV (Intel's computer vision library. License: BSD-style)
  • Open Scene Graph (Portable real-time visualization library using Op*nGL. License: LGPL) (ml)

- 3D & Gaming Libraries

  • Crystal Space (Portable 3D multimedia & game development framework. License: LGPL) (cvs) (ml)

  • VRS (Virtual Rendering System. Portable C++ library for 3D multimedia development framework. License: LGPL)
  • Nive (Portable 3D multimedia & game development framework. License: GPL)
  • Ogre (Portable 3D engine. License: LGPL) (cvs)
  • PLIB (Portable 3D game development library License: LGPL) (cvs) (ml)

  • Cal3D (Character animation library. License: LGPL) (cvs) (forum)
  • ImLib3D (3D image processing library. License: GPL) (cvs) (ml)
  • ODE (Open Dynamics Engine. Library for simulating articulated rigid body dynamics using collision detection of 3D objects. License: LGPL) (cvs) (ml)

  • Solid (Library for collision detection of 3D objects. License: LGPL)
  • Coldet (Library for collision detection of 3D objects. License: LGPL) (forum)
  • Nurbs++ (C++ library to manipulate and create NURBS curves and surfaces. License: LGPL) (cvs) (ml)
  • Coin (Portable library for 3D drawing with an API similar to Open Inventor. License: GPL) (ml)

  • GLT (OpnGL programming framework, with which you can program for GLUT or directly OpnGL. License: LGPL) (ml)
  • LibKSD (Portable SDL based game development library. License: LGPL) (cvs) (ml)
  • ClanLib (Portable SDL based game development library. License: LGPL)
  • NeL (Persistent multiplayer worlds framework. Inactive project. License: GPL) (cvs) (ml)

File Format Libraries

- Compression File Format Libraries

  • ...

- Audio File Format Libraries

  • ...

- Image File Format Libraries

- 3D & CAD File Format Libraries

  • lib3ds (Library to read and write the 3D Studio ".3ds" file format. Inactive project. License: GPL) (ml)
  • DGNlib (C++ library to read the Microstati*n ".dgn" CAD file format. DGNlib is part of the OGR library, which in turn is part of the GDAL library. License: BSD-style)

  • GDAL (Geospatial Data Abstraction Library. A library for reading and/or writing of several raster file formats License: BSD-style) (cvs) (ml)

GUI Libraries

  • wxWindows (Portable GUI development framework. License: modified LGPL) (cvs) (ml)
  • Qt (Portable GUI toolkit, but is only GPL on Unix/X11) (ml) (Qt/Embedded

    Embeddable port of Qt. License: GPL)

  • TinyQ (Stripped down version of Qt. License: GPL) (ml)
  • FLTK ("Fulltick" is a portable GUI toolkit) (cvs) (ml)
  • FOX (Portable GUI development framework)
  • GTKmm (C++ wrapper library for the GTK+ GUI toolkit. License: LGPL) (ml)
  • GTKmm (C++ wrapper library for the GTK+ GUI toolkit. License: LGPL) (ml)
  • GNOMEmm (GNOME development library which provieds functionality beyond GTK+/gtkmm. License: LGPL) (ml)
  • GtkGLExt (C and C++ library interface to use Op*nGL operations via GTK+ widgets. License: LGPL) (cvs) (ml)

  • aedGUI (Portable SDL based GUI library) (cvs) (ml)
  • ParaGUI (Portable SDL based GUI toolkit. License: LGPL) (cvs) (ml)
  • eboxy (SDL/XML based C++ API for designing user interfaces for entertainment PC's with a TV screen and IR remote. License: GPL) (cvs)

  • ViewKlass (Abstractions GUI developement library for creating applications which use the LessTif, OpenMotif or OSF/Mtif GUI toolkit library. This library aims to be source code compatible with SGI's ViewKt library.) (cvs)
  • TOAD (X specific GUI toolkit. License: LGPL)
  • Xclass (X specific GUI toolkit with a M$ win95/98 look and feel. License: LGPL) (cvs)

Device Access Libraries

  • libdsp (Library of digital signal processing functions, including: standard vector operations, filtering, and transforms. License: GPL) (cvs)

Testing and Debugging Libraries

  • DGB ("Depression Glass Debug". Library which extends ostream for creating better/easier trace logs. License: GPL) (cvs)
  • CppUnit (Framework for automatic unit testing. License: LGPL) (cvs) (ml)

  • libcwd (Thread-safe C++ debugging support library. License: Q Public License) (cvs) (ml)
  • LobTraceStream (Simple tracing mechanism for C++ source code. License: GPL) (cvs)

Database Engine/Interface Libraries

  • DBStep (Database independent abstraction layer for C++)
  • libpqxx (C++ API for PostgreSQL) (cvs)
  • MySQL++ (C++ API for MySQL)
  • Xbase (Collection of specifications, programs, utilities and a C++ class library for manipulating Xbase (dBase, Clipper, FoxPro, etc.) type datafiles and indices) (cvs) (ml)

  • SQLoco (Database API library based on the Perl DBI interface, currently only with MySQL support. License: BSD-style)
  • DBConnect (Database API library, with PostgreSQL, MySQL, Oracle and ODBC support.)
  • DBConnect (C++ database API, with PostgreSQL, MySQL, Oracle and ODBC support.)
  • QDBM (Embedded database library. License: GPL)
  • hk_classes (GUI independent library for creating database utilizing applications)

Science Libraries

  • Numerical, Algorithmic and Crypto Libraries
  • HDF5 (Library and storage format for handling scientific data. License: BSD-style)
  • GRASS/Qt (Library for using GRASS GIS functionality via a Qt GUI based application)

  • BTK (Biomolecule Tookit. Library for modeling biological macro-molecules such as proteins, DNA and RNA.) (cvs)
  • ORSA ("Orbit Reconstruction, Simulation, and Analysis" is a C++ framework for the development of algoritms for the simulation and analysis of the orbital evolution of bodies in space. License: GPL) (cvs)

Financial Libraries

  • libofx (Free implementation of the Open Financial eXchange

    specification used for the electronic exchange of financial data between financial institutions, business and customers via the Internet. License: GPL) (cvs)

  • Quantlib (Quantitative finance library for modeling, pricing, trading, and risk management. License: BSD-style) (cvs) (ml)

GCC/G++ Compiler

Other Compilers

  • MinGW (GCC extensions and libraries to produce native M$ windows32 programs) (cvs) (docs)

  • DJGPP (GCC based C/C++ compiler for x386's running M$ DOS)
  • OpenC++ (Extensible C++ compiler. It allows you to create new syntax, new annotation, and new object behavior. License: OpenC++ License.) (cvs)
  • Cint (C/C++ Interpreter)

Developer Applications

  • Valgrind (memory debugger for x86-compatible GNU/Linux systems)
  • LeakTracer (C++ memory allocation debugger for new/delete calls)
  • KDE Developer Applications
  • ABIcheck (Utility for checking an application binary's use of library interfaces against the Application Binary Interface (ABI) defined for those libraries.) (cvs) (ml)

  • Rats (Rough Auditing Tool. Security auditing utility for C and C++ code)

User Applications

  • KDE Project
  • Ginac (Mathmatical engine to help with the creation of integrated systems that embed symbolic manipulations, it is to be used with the C++ programming language)
  • Courier (Integrated mail platform) (cvs)

  • BlackBox (Lightweight and ICCCM compliant X window manager) (cvs) (ml)
  • Mozilla (Portable self-contained web browser) (lxr)
  • Swish++ (Filesystem/website indexing and retrieval system)
  • Posadis (DNS server) (cvs)

  • Fugue (Air traffic control simultation environment)

Books