Browse free open source C++ Libraries and projects below. Use the toggles on the left to filter open source C++ Libraries by OS, license, language, programming language, and project status.

  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Start Free
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 1
    Replica Dataset

    Replica Dataset

    High-fidelity indoor 3D dataset for AI simulation and robotics

    Replica Dataset is a high-quality 3D dataset of realistic indoor environments designed to advance research in computer vision, robotics, and embodied AI. Developed by Facebook Research (now Meta AI), it features accurate geometric reconstructions, high-resolution and high dynamic range textures, and comprehensive semantic annotations. Each environment contains detailed models of real-world spaces, including rooms, furniture, glass, and mirror surfaces. The dataset also provides semantic and instance segmentations, planar decomposition, and navigation meshes, making it highly suitable for simulation, visual perception, and autonomous navigation tasks. Replica integrates seamlessly with AI Habitat, Meta’s framework for embodied AI training, enabling large-scale agent simulation and photorealistic rendering for reinforcement learning and robotics. Researchers can use Replica’s ReplicaViewer to interactively explore the 3D scenes.
    Downloads: 4,133 This Week
    Last Update:
    See Project
  • 2
    AnyPS5

    AnyPS5

    Tool for automatic PS5 executables porting to Linux and Windows

    AnyPS5 is an experimental compatibility project for automatically porting PlayStation 5 executables to Linux and Windows. Instead of emulating an entire console, it relinks executables into native target formats and supplies replacement implementations for required system libraries. The project includes a shader recompiler that can produce SPIR-V for Vulkan-based graphics workflows. Unsupported conditions are deliberately surfaced as runtime errors rather than silently ignored. SDL-compatible game controllers are supported, while keyboard and mouse mappings can be configured separately. The relinker uses C++20 and targets portability across host compilers where practical. AnyPS5 is intended for interoperability, preservation, and research using legally obtained software.
    Downloads: 1,305 This Week
    Last Update:
    See Project
  • 3

    Win flex-bison

    Win flex-bison is a port Flex & Bison tools to the Windows platform

    Win flex-bison is a windows port the Flex (the fast lexical analyser) and Bison (GNU parser generator). win_flex based on Flex version 2.6.3 source code and win_bison based on Bison version 2.7 and they depend on system libraries only. Git repository: https://github.com/lexxmark/winflexbison UPDATE1: Bison version 3.x.x available in Files section in win_flex_bison3-latest.zip package. UPDATE2: Now "winflexbison" available as package in Chocolatey (https://chocolatey.org/packages/winflexbison and https://chocolatey.org/packages/winflexbison3) UPDATE3: You can use VS custom build rules to simplify working with winflexbison in Visual Studio 2010 and upper (https://sourceforge.net/p/winflexbison/wiki/Visual%20Studio%20custom%20build%20rules/).
    Leader badge
    Downloads: 3,557 This Week
    Last Update:
    See Project
  • 4
    Octave Forge

    Octave Forge

    A collection of packages providing extra functionality for GNU Octave

    Octave Forge is a central location for collaborative development of packages for GNU Octave. The Octave Forge packages expand Octave's core functionality by providing field specific features via Octave's package system. See https://octave.sourceforge.io/packages.php for a list of all available packages. GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems, and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable. Refer to https://www.octave.org for more information.
    Leader badge
    Downloads: 1,984 This Week
    Last Update:
    See Project
  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Start Free
  • 5
    The OpenGL Extension Wrangler Library
    The OpenGL Extension Wrangler Library is a simple tool that helps C/C++ developers initialize extensions and write portable applications. GLEW currently supports a variety of operating systems, including Windows, Linux, Darwin, Irix, and Solaris.
    Leader badge
    Downloads: 2,017 This Week
    Last Update:
    See Project
  • 6
    GTK+2 for Windows Runtime Environment

    GTK+2 for Windows Runtime Environment

    The files required to run GTK+ applications on Windows

    This is the GTK+2 Runtime Environment Installer for Windows. It includes all of the files required to run GTK+2 applications on Windows. Some support tools are also available. This project is no longer maintained. Please use its successor: https://github.com/tschoonj/GTK-for-Windows-Runtime-Environment-Installer
    Leader badge
    Downloads: 1,253 This Week
    Last Update:
    See Project
  • 7

    half

    C++ library for half precision floating point arithmetics.

    This is a C++ header-only library to provide an IEEE-754 conformant half-precision floating point type along with corresponding arithmetic operators, type conversions and common mathematical functions. It aims for both efficiency and ease of use, trying to accurately mimic the behaviour of the builtin floating point types at the best performance possible. It automatically uses and provides C++11 features when possible, but stays completely C++98-compatible when neccessary.
    Leader badge
    Downloads: 4,102 This Week
    Last Update:
    See Project
  • 8
    RedSun

    RedSun

    The Red Sun vulnerability repository

    RedSun is a proof-of-concept security project that demonstrates a critical privilege escalation vulnerability in Microsoft Defender by exploiting unintended file-handling behavior. The tool leverages how Defender processes files tagged with cloud metadata, where instead of removing malicious files, the antivirus may rewrite them to their original location. By carefully manipulating this process, the exploit enables attackers to overwrite protected system files and gain SYSTEM-level privileges from a low-privilege account. The repository provides a minimal C++ implementation that showcases this behavior for research and educational purposes. It highlights flaws in endpoint protection logic and emphasizes how race conditions and file system interactions can be abused. The project is not designed as a full framework but as a focused demonstration of a real-world vulnerability. It serves as a stark example of how defensive systems can be turned into attack vectors.
    Downloads: 152 This Week
    Last Update:
    See Project
  • 9
    OpenPose

    OpenPose

    Real-time multi-person keypoint detection library for body, face, etc.

    OpenPose has represented the first real-time multi-person system to jointly detect human body, hand, facial, and foot keypoints (in total 135 keypoints) on single images. It is authored by Ginés Hidalgo, Zhe Cao, Tomas Simon, Shih-En Wei, Yaadhav Raaj, Hanbyul Joo, and Yaser Sheikh. It is maintained by Ginés Hidalgo and Yaadhav Raaj. OpenPose would not be possible without the CMU Panoptic Studio dataset. We would also like to thank all the people who has helped OpenPose in any way. 15, 18 or 25-keypoint body/foot keypoint estimation, including 6 foot keypoints. Runtime invariant to number of detected people. 2x21-keypoint hand keypoint estimation. Runtime depends on number of detected people. 70-keypoint face keypoint estimation. Runtime depends on number of detected people. Input: Image, video, webcam, Flir/Point Grey, IP camera, and support to add your own custom input source (e.g., depth camera).
    Downloads: 131 This Week
    Last Update:
    See Project
  • Veeam Data Platform v13.1 - Get Your Free Trial Icon
    Veeam Data Platform v13.1 - Get Your Free Trial

    Secure by design, portable by default. Recover clean, fast, anywhere. Start a free trial.

    Try Veeam Data Platform today. Experience the unified platform that's secure by design, portable by default, and proven to recover clean, fast, and anywhere.
    Try it Free
  • 10
    Effekseer

    Effekseer

    This software is a particle effect editing tool

    Effekseer is an open-source tool designed for creating stunning visual effects for games and multimedia applications. It allows artists and developers to design complex particle effects through an intuitive graphical user interface, supporting various features like particles, beams, and distortion effects. Effekseer supports multiple platforms and integrates seamlessly with popular game engines, enabling the creation of rich visual experiences without extensive programming knowledge.
    Downloads: 80 This Week
    Last Update:
    See Project
  • 11

    ESP8266 Arduino Core

    ESP8266 core for Arduino

    ESP8266 Arduino Core is the Arduino core for the ESP8266 WiFi chip. It brings support for the ESP8266 chip to the Arduino environment, allowing you to write sketches, use familiar Arduino functions and libraries, and run these directly on ESP8266 without the need for an external microcontroller. ESP8266 Arduino core comes with libraries that enable it to perform a number of things. It can communicate over WiFi through the use of TCP and UDP; it can set up HTTP, mDNS, SSDP, and DNS servers; and it can perform OTA updates. ESP8266 Arduino core works with SD cards, servos, SPI and I2C peripherals.
    Downloads: 79 This Week
    Last Update:
    See Project
  • 12
    Intel RealSense

    Intel RealSense

    Intel® RealSense SDK

    Intel® RealSense™ SDK 2.0 is a cross-platform library for Intel® RealSense™ depth cameras. The SDK allows depth and color streaming and provides intrinsic and extrinsic calibration information. The library also offers synthetic streams (point cloud, depth aligned to color and vise-versa), and built-in support for recording and playback of streaming sessions. Intel has EOLed the LiDAR, Facial Authentication, and Tracking product lines. These products have been discontinued and will no longer be available for new orders. Intel WILL continue to sell and support stereo products including the following: D410, D415, D430, , D401 ,D450 modules and D415, D435, D435i, D435f, D405, D455, D457 depth cameras. We will also continue the work to support and develop our LibRealSense open source SDK.
    Downloads: 75 This Week
    Last Update:
    See Project
  • 13
    POCO

    POCO

    Cross-platform C++ libraries for building network applications

    The POCO C++ Libraries are powerful cross-platform C++ libraries for building network- and internet-based applications that run on desktop, server, mobile, IoT, and embedded systems. Whether building automation systems, industrial automation, IoT platforms, air traffic management systems, enterprise IT application and infrastructure management, security and network analytics, automotive infotainment and telematics, financial or healthcare, C++ developers have been trusting the POCO C++ Libraries for 15+ years and deployed it in millions of devices. Create software for connected embedded devices running Linux, Windows Embedded or QNX. Create cross-platform backends in C++ for iOS and Android applications and combine it with a native or HTML5-based user interface. Create software for IoT devices that talk to cloud backends over HTTP REST APIs. See macchina.io for an IoT platform built with POCO.
    Downloads: 72 This Week
    Last Update:
    See Project
  • 14
    rtabmap

    rtabmap

    RTAB-Map library and standalone application

    RTAB-Map (Real-Time Appearance-Based Mapping) is a RGB-D, Stereo and Lidar Graph-Based SLAM approach based on an incremental appearance-based loop closure detector. The loop closure detector uses a bag-of-words approach to determine how likely a new image comes from a previous location or a new location. When a loop closure hypothesis is accepted, a new constraint is added to the map’s graph, then a graph optimizer minimizes the errors in the map. A memory management approach is used to limit the number of locations used for loop closure detection and graph optimization so that real-time constraints on large-scale environments are always respected. RTAB-Map can be used alone with a handheld Kinect, a stereo camera or a 3D lidar for 6DoF mapping, or on a robot equipped with a laser rangefinder for 3DoF mapping.
    Downloads: 72 This Week
    Last Update:
    See Project
  • 15
    Mikmod Sound System
    Mikmod is a module player and library supporting many formats, including mod, s3m, it, and xm. Originally a player for MS-DOS, MikMod has been ported to other platforms, such as Unix, Macintosh, BeOS, and Java(!!)
    Leader badge
    Downloads: 869 This Week
    Last Update:
    See Project
  • 16
    Vcpkg

    Vcpkg

    C++ Library Manager for Windows, Linux, and MacOS

    Vcpkg helps you manage C and C++ libraries on Windows, Linux and MacOS. This tool and ecosystem are constantly evolving, and we always appreciate contributions! After you've gotten vcpkg installed and working, you may wish to add tab completion to your shell. With CMake, you will still need to find_package and the like to use the libraries. Check out the CMake section for more information, including on using CMake with an IDE. In classic mode, vcpkg produces an "installed" tree, whose contents are changed by explicit calls to vcpkg install or vcpkg remove. The installed tree is intended for consumption by any number of projects: for example, installing a bunch of libraries and then using those libraries from Visual Studio, without additional configuration. Because the installed tree is not associated with an individual project, it's similar to tools like brew or apt, except that the installed tree is vcpkg-installation-local, rather than global to a system or user.
    Downloads: 51 This Week
    Last Update:
    See Project
  • 17
    OpenH264

    OpenH264

    Open Source H.264 Codec

    Cisco has taken their H.264 implementation and open-sourced it under BSD license terms. Development and maintenance will be overseen by a board from the industry and the open-source community. Furthermore, we have provided a binary form suitable for inclusion in applications across a number of different operating systems and made this binary module available for download from the Internet. We will not pass on our MPEG-LA licensing costs for this module, and based on the current licensing environment, this will effectively make H.264 free for use on supported platforms. OpenH264 is a codec library which supports H.264 encoding and decoding. It is suitable for use in real-time applications such as WebRTC. Constrained Baseline Profile up to Level 5.2 (Max frame size is 36864 macro-blocks). Arbitrary resolution, not constrained to multiples of 16x16. Rate control with adaptive quantization, or constant quantization.
    Downloads: 49 This Week
    Last Update:
    See Project
  • 18
    ArduinoJson

    ArduinoJson

    JSON library for Arduino and embedded C++. Simple and efficient

    ArduinoJson is a C++ JSON library for Arduino and IoT (Internet Of Things). ArduinoJson has a simple and intuitive syntax to handle objects and arrays. ArduinoJson supports both JSON serialization and deserialization. ArduinoJson uses a fixed memory allocation, allowing to work on devices with very little RAM. ArduinoJson can filter large inputs to keep only fields that are relevant to your application, thereby saving a lot of memory. ArduinoJson can parse directly from an input Stream or std::istream. ArduinoJson can produce compact or prettified documents. ArduinoJson works directly with strings stored in program memory. ArduinoJson supports two coding styles, with implicit or explicit casts. ArduinoJson deduplicates strings in the JSON document. When you have several identical keys or values, the JsonDocument only stores one of each. In practice, this feature reduces memory consumption by 20-30%.
    Downloads: 40 This Week
    Last Update:
    See Project
  • 19
    Perfetto

    Perfetto

    Production-grade client-side tracing, profiling, and analysis

    Perfetto is a production-grade tracing platform for Android, Linux, and Chrome that captures extremely detailed information about what a system is doing over time. It’s designed around a low-overhead producer/consumer model: instrumented components (“producers”) write binary events into shared memory buffers and a collector (“service”) reliably streams them to storage. The data model spans kernel and userspace, so you can stitch together CPU scheduling, app lifecycles, binder/IPC hops, GPU work, power and thermal signals, file I/O, heap samples, and more into a single coherent timeline. Perfetto’s ecosystem includes a web-based UI that can load multi-GB traces directly in the browser and an offline “trace processor” that exposes the trace as a queryable SQL-like table schema for deep analysis and automation. It integrates natively with Android (replacing older atrace/Systrace paths) and can sit alongside custom instrumentation in apps or services through its SDKs.
    Downloads: 35 This Week
    Last Update:
    See Project
  • 20
    SFML

    SFML

    Simple and Fast Multimedia Library

    SFML provides a simple interface to the various components of your PC, to ease the development of games and multimedia applications. It is composed of five modules: system, window, graphics, audio and network. Discover their features more in detail in the tutorials and the API documentation. With SFML, your application can compile and run out of the box on the most common operating systems: Windows, Linux, macOS and soon Android & iOS. Pre-compiled SDKs for your favorite OS are available on the download page. SFML has official bindings for the C and .Net languages. And thanks to its active community, it is also available in many other languages such as Java, Ruby, Python, Go, and more.
    Downloads: 32 This Week
    Last Update:
    See Project
  • 21
    libmwaw

    libmwaw

    Import library for legacy Mac documents

    libmwaw contains import filters for many old Macintosh text document formats (MacWrite, ClarisWorks, ... ) and for some graphic, spreadsheet and presentation formats. It can handle with varying level of success about forty different formats (see the Wiki section for more details). libmwaw is based on librevenge (see https://sourceforge.net/p/libwpd/wiki/librevenge/ ).
    Leader badge
    Downloads: 835 This Week
    Last Update:
    See Project
  • 22
    Arduino libraries

    Arduino libraries

    Arduino libraries and code

    This repository contains several Arduino libraries I have written to be used in applications. Most of them include example code on how the libraries can be used. Furthermore, this repository contains a few stand-alone applications. For bugs in the libraries, please fill in an issue in Github as that makes it far easier to track them. If possible provide a minimal code snippet that exposes the bug. Add information about the platform used and version etc. Also, proposals for solutions are welcome. For improvements and changes, please provide a pull request. I will try to follow up on them asap but it can take quite some time. Please try to be generic in your improvements and try to see "over the needs of your own application".
    Downloads: 30 This Week
    Last Update:
    See Project
  • 23
    projectM

    projectM

    Cross-platform Music Visualization Library

    Cross-platform Music Visualization Library. Open-source and Milkdrop-compatible. Experience psychedelic and mesmerizing visuals by transforming music into equations that render a limitless array of user-contributed visualizations. projectM is an open-source project that reimplements the esteemed Winamp Milkdrop by Geiss in a more modern, cross-platform reusable library. Its purpose in life is to read an audio input and to produce mesmerizing visuals, detecting tempo, and rendering advanced equations into a limitless array of user-contributed visualizations.
    Downloads: 26 This Week
    Last Update:
    See Project
  • 24
    Khronos KTX

    Khronos KTX

    KTX (Khronos Texture) Library and Tools

    KTX-Software is a suite of tools and libraries for working with Khronos Texture (KTX) files, designed and maintained by the Khronos Group. KTX is a container format for storing textures that are optimized for GPU upload, supporting modern formats like Basis Universal and ASTC. This repository includes tools for creating, validating, inspecting, and converting KTX and KTX2 files, making it essential for developers working in 3D engines, games, and visualization tools where texture streaming and compression are key.
    Downloads: 24 This Week
    Last Update:
    See Project
  • 25
    Munt
    A multi-platform software synthesiser emulating (somewhat inaccurately) pre-GM MIDI devices such as the Roland MT-32, CM-32L, CM-64 and LAPC-I. In no way endorsed by or affiliated with Roland Corp. Source hosted at: http://www.github.com/munt/
    Leader badge
    Downloads: 131 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next