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.

  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 1
    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: 3,700 This Week
    Last Update:
    See Project
  • 2

    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,002 This Week
    Last Update:
    See Project
  • 3
    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,724 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,368 This Week
    Last Update:
    See Project
  • No-Nonsense Code-to-Cloud Security for Devs | Aikido Icon
    No-Nonsense Code-to-Cloud Security for Devs | Aikido

    Connect your GitHub, GitLab, Bitbucket, or Azure DevOps account to start scanning your repos for free.

    Aikido provides a unified security platform for developers, combining 12 powerful scans like SAST, DAST, and CSPM. AI-driven AutoFix and AutoTriage streamline vulnerability management, while runtime protection blocks attacks.
    Start for Free
  • 5
    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: 112 This Week
    Last Update:
    See Project
  • 6
    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: 76 This Week
    Last Update:
    See Project
  • 7
    CasADi

    CasADi

    CasADi is a symbolic framework for numeric optimization

    CasADi is a symbolic framework for numeric optimization implementing automatic differentiation in forward and reverse modes on sparse matrix-valued computational graphs. It supports self-contained C-code generation and interfaces state-of-the-art codes such as SUNDIALS, IPOPT, etc. It can be used in C++, Python, or Matlab/Octave. CasADi's backbone is a symbolic framework implementing forward and reverse modes of AD on expression graphs to construct gradients, large-and-sparse Jacobians, and Hessians. These expression graphs, encapsulated in Function objects, can be evaluated in a virtual machine or exported to stand-alone C code. Initial value problems in ordinary or differential-algebraic equations (ODE/DAE) can be calculated using explicit or implicit Runge-Kutta methods or interfaces to IDAS/CVODES from the SUNDIALS suite. Derivatives are calculated using sensitivity equations, up to arbitrary order.
    Downloads: 71 This Week
    Last Update:
    See Project
  • 8
    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: 68 This Week
    Last Update:
    See Project
  • 9
    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: 57 This Week
    Last Update:
    See Project
  • Photo and Video Editing APIs and SDKs Icon
    Photo and Video Editing APIs and SDKs

    Trusted by 150 million+ creators and businesses globally

    Unlock Picsart's full editing suite by embedding our Editor SDK directly into your platform. Offer your users the power of a full design suite without leaving your site.
    Learn More
  • 10
    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: 267 This Week
    Last Update:
    See Project
  • 11
    Point Cloud Library

    Point Cloud Library

    A standalone, large scale, open project for 2D/3D image processing

    The Point Cloud Library (PCL) is a standalone, large scale, open project for 2D/3D image and point cloud processing. PCL is released under the terms of the BSD license, and thus free for commercial and research use. Whether you’ve just discovered PCL or you’re a long time veteran, this page contains links to a set of resources that will help consolidate your knowledge on PCL and 3D processing. An additional Wiki resource for developers is available too. To simplify both usage and development, we split PCL into a series of modular libraries. PCL is cross-platform, and has been successfully compiled and deployed on Linux, MacOS, Windows, and Android. To simplify development, PCL is split into a series of smaller code libraries, that can be compiled separately. This modularity is important for distributing PCL on platforms with reduced computational or size constraints.
    Downloads: 53 This Week
    Last Update:
    See Project
  • 12

    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: 1,160 This Week
    Last Update:
    See Project
  • 13
    FlatBuffers

    FlatBuffers

    Memory Efficient Serialization Library

    FlatBuffers is an open source, cross-platform serialization library designed for maximum memory efficiency. Originally created at Google for game development and other performance-critical apps, FlatBuffers has the unique ability of allowing you to directly access serialized data without having to parse or unpack beforehand. Since the only memory needed to access your data is that of the buffer, it is also very memory efficient and fast. FlatBuffers supports Windows, MacOS, Linux and Android, as well as any other operating systems with a recent C++ compiler. It supports a great number of programming languages, including C++, C#, C, Go, Java, Kotlin, JavaScript, Lobster, Lua, TypeScript, PHP and many others in progress.
    Downloads: 41 This Week
    Last Update:
    See Project
  • 14
    ncnn

    ncnn

    High-performance neural network inference framework for mobile

    ncnn is a high-performance neural network inference computing framework designed specifically for mobile platforms. It brings artificial intelligence right at your fingertips with no third-party dependencies, and speeds faster than all other known open source frameworks for mobile phone cpu. ncnn allows developers to easily deploy deep learning algorithm models to the mobile platform and create intelligent APPs. It is cross-platform and supports most commonly used CNN networks, including Classical CNN (VGG AlexNet GoogleNet Inception), Face Detection (MTCNN RetinaFace), Segmentation (FCN PSPNet UNet YOLACT), and more. ncnn is currently being used in a number of Tencent applications, namely: QQ, Qzone, WeChat, and Pitu.
    Downloads: 39 This Week
    Last Update:
    See Project
  • 15
    IRremote Arduino Library

    IRremote Arduino Library

    Infrared remote library for Arduino, send and receive infrared signals

    This library enables you to send and receive using infra-red signals on an Arduino. You can use any pin for sending now like you are used to receiving. Simultaneous sending and receiving. See the SendAndReceive example. No more need to use 32-bit hex values in your code. Instead, a (8 bit) command value is provided for decoding (as well as a 16-bit address and a protocol number). Protocol values comply to protocol standards, i.e. NEC, Panasonic, Sony, Samsung, and JVC decode and send LSB first. Supports more protocols, since adding a protocol is quite easy now. Better documentation and more examples. Compatible with tone() library, see ReceiveDemo. Supports more platforms, since the new structure allows to easily add a new platform. Feedback LED also for sending. Ability to generate a non-PWM signal to just simulate an active low receiver signal for direct connection to existent receiving devices without using IR.
    Downloads: 37 This Week
    Last Update:
    See Project
  • 16
    LevelDB

    LevelDB

    A fast key-value storage library

    LevelDB is a library of persistent key values. Written at Google, it contains keys and values that are arbitrary byte arrays, ordered within the key value store according to a user-specified comparator function. LevelDB is not an SQL database and does not support SQL queries or indexes. It simply provides an ordered mapping from string keys to string values. Data is stored already sorted by key, though callers can override the sort order through a custom comparison function. It supports forward and backward iteration as well as transient snapshots, and automatically compresses data via the Snappy compression library.
    Downloads: 37 This Week
    Last Update:
    See Project
  • 17
    dlib C++ Library
    Dlib is a C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems.
    Leader badge
    Downloads: 154 This Week
    Last Update:
    See Project
  • 18
    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: 487 This Week
    Last Update:
    See Project
  • 19
    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: 837 This Week
    Last Update:
    See Project
  • 20
    better-sqlite3

    better-sqlite3

    The fastest and simplest library for SQLite3 in Node.js

    The fastest and simplest library for SQLite3 in Node.js. Full transaction support. High performance, efficiency, and safety. Easy-to-use synchronous API (better concurrency than an asynchronous API... yes, you read that correctly). Support for user-defined functions, aggregates, virtual tables, and extensions. 64-bit integers (invisible until you need them). Worker thread support (for large/slow queries). Help this project stay strong! better-sqlite3 is used by thousands of developers and engineers on a daily basis. Long nights and weekends were spent keeping this project strong and dependable, with no ask for compensation or funding, until now. In most cases, if you're attempting something that cannot be reasonably accomplished with better-sqlite3, it probably cannot be reasonably accomplished with SQLite3 in general.
    Downloads: 30 This Week
    Last Update:
    See Project
  • 21
    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: 29 This Week
    Last Update:
    See Project
  • 22
    wxWidgets

    wxWidgets

    Cross-Platform C++ GUI Library

    wxWidgets is a C++ library that lets developers create applications for Windows, macOS, Linux, and other platforms with a single code base. It has popular language bindings for Python, Ruby, Lua, Perl, and several other languages, and unlike other cross-platform toolkits, wxWidgets gives applications a truly native look and feel because it uses the platform's native API rather than emulating the GUI. It's also extensive, free, open-source, and mature.
    Downloads: 28 This Week
    Last Update:
    See Project
  • 23

    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: 27 This Week
    Last Update:
    See Project
  • 24
    [OFFICIAL] tinyfiledialogs C C++ v3.21.1

    [OFFICIAL] tinyfiledialogs C C++ v3.21.1

    inputbox password WIN OSX GTK QT Console VCPKG C# Lua R Fortran Pascal

    one C/C++ file & header provides 8 functions: - beep - tray notify popup - message & question - input & password - save file - open file(s) - select folder - color picker complements OpenGL Vulkan GLFW GLUT GLUI VTK SFML TGUI SDL Ogre Unity3d ION OpenCV CeGui MathGL GLM CPW GLOW Open3D ImGui MyGui GLT NGL STB Nuklear Fenster MicroUi & GUI-less programs NO INIT NO MAIN LOOP NO LINKING NO INCLUDE win (XP to 11) ASCII MBCS UTF-8 UTF-16 (wchar_t) - native dialogs osx/unix ASCII UTF-8 - applescript kdialog zenity shanty … ° SSH console / X forwarding / waypipe Wayland ° the dialogs can be forced into console mode ° curses dialogs via Dialog.exe/Dialog (disabled by default) C89/C18 & C++98/C++23 compliant VisualStudio MinGW GCC Clang TinyCC IntelCC OWCC BCC SunCC on Windows Mac Linux Bsd Solaris Minix Raspbian Flatpak Haiku bindings: VCPKG C# R Lua Rust Haskell Java AllegroBasic Fortran Pascal D JavaScript Kotlin click tab 'Files' for prototypes
    Leader badge
    Downloads: 128 This Week
    Last Update:
    See Project
  • 25
    ArUco

    ArUco

    Augmented reality library based on OpenCV

    ArUco is a minimal library for Augmented Reality applications based exclusively on OpenCV. Relies on b/w markers with codes that are detected by calling a single function. Trivial integration of your augmented reality applications with OpenGL and OGRE. See documentation at https://drive.google.com/file/d/1OiavRVYVJ-WH88sQg1LUsh8CuJZUQyrX/view?usp=sharing
    Leader badge
    Downloads: 237 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.