c_plus_plus_open_source_libraries

C++ open source libraries

https://en.cppreference.com/w/cpp/links/libs

A list of open source C++ libraries:

The objective of this page is to build a comprehensive list of open source C++ libraries, so that when one needs an implementation of particular functionality, one needn't to waste time searching on web (DuckDuckGo, Google, Bing etc.).

If you know a library that might be useful to others, please add a link to it here. There are no restrictions on what can be included except that the source of the library must be readily available to download.

The page is provided 'as is' - with the hope of being useful, but without any warranties. Outdated, misleading or wrong links might appear here. If you've noticed one of these, it would be great if you fixed the error.

Libraries:

Package managers

Package manager Description
build2 An open source (MIT), cross-platform build toolchain that aims to approximate Rust Cargo's convenience for developing and packaging C/C++ projects while providing more depth and flexibility, especially in the build system.
cget Cmake package retrieval. This can be used to download and install cmake packages.
cmodule Non-intrusive CMake dependency management.
conan Decentralized, open-source (MIT), C/C++ package manager.
CPM.cmake A CMake script that adds dependency management capabilities to CMake. It's built as a thin wrapper around CMake's FetchContent module that adds version control, caching, a simple API and more.
hunter A CMake driven cross-platform package manager for C/C++ projects.
spack A package manager for supercomputers, Linux, and macOS. It makes installing scientific software easy. It isn’t tied to a particular language.
teaport A cocoapods inspired dependency manager.
vcpkg A C++ package manager for Windows, Linux, and macOS.

Libraries

Audio

; CD

; Fingerprinting

; Formats

; Tagging

Benchmarking

Communication

}

Concurrency

Configuration

; Command Line

; CSS

; HOCON

; JSON

; TOML

; XML

; YAML

Containers

in which both

and

can be used as a key. | BSL-1.0 }}

,

,

,

,

,

,

,

. | BSL-1.0 }}

,

,

and

), along with transformed presentation of their underlying data, a.k.a views.“ | BSL-1.0 }}

(a fixed size collection of elements) | BSL-1.0 }}

(a safe, generic, stack-based discriminated

container) | BSL-1.0 }}

,

,

,

. (Src) | Apache-2.0 | CMake }}

support. | BSL-1.0 | CMake }}

perfect-hashing-based frozen sets and maps | Apache-2.0 }}

containers in high-modification scenarios while maintaining valid pointers to non-erased elements regardless of insertion and erasure. C++98/11/14/etc-compatible. (Src) | zlib license | conan build2 }}

implementation which sacrifices range-splicing for cache-friendliness, yielding faster insertion, erasure and iteration. C++98/11/14/etc-compatible. (Src) | zlib license }}

container adaptor with better performance than

and

in a queue context. C++98/11/14/etc-compatible. (Src) | zlib license }}

container adaptor with better performance than

and

in a stack context. C++98/11/14/etc-compatible. (Src) | zlib license }}

, a.k.a. circular buffer view. C++98- compatible. | BSL-1.0 | CMake }}

/

compatible), never-empty

targetting C++11. Fast, prevents many undesirable implicit conversions. | BSL-1.0 | CMake }}

Cryptography

Databases

Embedded languages bindings

Embedded/Realtime

File metadata

Financial Calculations

Game Engine Architecture

General Multimedia

Generic

GPS

Graphic user interface

; CopperSpice

; GTK+

; Qt

; U++

Graphics

Graphics (3D)

Images

; Formats

; Plotting

Image Processing

Internationalization

Logging

Error handling

Math

; Automata theory

; Class Library for Numbers

; Computational geometry

; Graph theory

; Linear algebra

Main_Page#Documentation | A C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms. | MPL2 | CMake, Conan}}

; Machine Learning

; Numeral Calculations

; Optimization

Metaprogramming

PDF

Physics and Simulations

Serialization

; Binary serialization

Sorting

System

Terminal

Testing

See also

Text

; Coding

; Diff/Patch

; Format

family. | Victor Zverovich Licence | CMake, Conan}}

; Parse

; Search

; Template Engine

Version Control

Video

Web

See also

c_plus_plus_open_source_libraries.txt · Last modified: 2024/04/28 03:32 by 127.0.0.1