List of C++ software and tools
Appearance
This is a list of software and programming tools for the C++ programming language, which includes libraries, web frameworks, implementations, compilers, integrated development environments, tools, and related projects.
Compilers and IDEs
[edit]- AMD Optimizing C/C++ Compiler — proprietary fork of LLVM + Clang for Linux
- C++Builder — rapid application development (RAD) environment
- Clang – compiler front end for C, C++, and Objective-C, part of LLVM
- CLion — C++ IDE by JetBrains
- Code::Blocks — open-source cross-platform IDE that supports multiple compilers including GCC, Clang and Visual C++
- CodeLite — cross-platform IDE for the C/C++ programming languages using the wxWidgets toolkit
- CodeSynthesis XSD – XML Data Binding compiler
- Dev-C++ — MinGW or TDM-GCC 64bit port of the GCC as its compiler
- GCC – GNU Compiler Collection
- Intel C++ Compiler – proprietary high-performance compiler by Intel
- KDevelop — IDE part of the KDE project and is based on KDE Frameworks and Qt, the C/C++ backend uses Clang.
- Microsoft Visual C++ – proprietary C++ compiler and IDE for Windows
- Oracle Developer Studio — Solaris, OpenSolaris, RHEL, and Oracle Linux operating systems.
- Qt Creator — part of the SDK for the Qt GUI application development framework and uses the Qt API
- SlickEdit — text editor and IDE
- Turbo C++ – legacy C++ IDE and compiler popular in the 1990s
- Understand — IDE that enables static code analysis through an array of visuals, documentation, and metric tools.
- Visual Studio — integrated development environment by Microsoft that supports C++
- Visual Studio Code — integrated development environment by Microsoft that supports C++
- Xcode — Apple IDE to develop macOS, iOS, iPadOS, watchOS, tvOS, and visionOS that supports C++ source code.
Debuggers
[edit]- Allinea DDT – a graphical debugger
- dbx — a proprietary source-level debugger
- GNU Debugger – portable debugger that runs on many Unix-like systems
- Modular Debugger — a C/C++ source level debugger for Solaris and derivates
- Undo LiveRecorder — time travel debugger
Libraries
[edit]- Active Template Library – template-based C++ classes developed by Microsoft
- ALGLIB — numerical analysis and data processing library
- Apache MXNet — deep learning framework
- Apache Xerces – parsing, validating, and serializing and manipulating XML.
- Armadillo — linear algebra library
- Asio — networking and low-level I/O library
- Bitpit — scientific computing and mesh manipulation library
- Boost — collection of peer-reviewed libraries
- Botan — cryptography library
- C++ AMP – easy way to write programs that compile and execute on data-parallel hardware, such as graphics cards and GPUs
- C++ Standard Library — standard library for the language
- C++/WinRT — library for Microsoft's Windows Runtime platform, designed to provide access to modern Windows APIs.
- C3D Toolkit — geometric modeling kernel
- Caffe — deep learning framework
- CAPD — library for rigorous numerics and dynamical systems
- Cassowary — constraint-solving toolkit that efficiently solves systems of linear equalities and inequalities
- CGAL — computational geometry algorithms library
- Cinder — library for creative coding
- ClanLib — cross-platform game SDK
- Class Library for Numbers — number theory and arithmetic library
- CMU Sphinx — speech recognition system
- CppUnit — unit testing framework
- Crypto++ — cryptographic algorithms library
- deal.II — finite element analysis library
- Dlib — general-purpose cross-platform library
- Dune — partial differential equations using grid-based methods
- Effi — libraries for numerics
- Eigen — template library for linear algebra
- fastText — text representation and text classification library
- FLTK — GUI toolkit
- Geospatial Data Abstraction Library — geospatial data access library
- GDCM — image library
- General Polygon Clipper — polygon clipping library
- GiNaC — computer algebra system that uses Class Library for Numbers for implementing arbitrary-precision arithmetic
- GLFW — OpenGL and window management library
- Google Test — unit testing library
- HarfBuzz — text rendering and typesetting library
- High Efficiency Image File Format — digital container format for storing individual digital images and image sequences
- ITK — image analysis library
- Integrated Performance Primitives — domain-specific functions that are highly optimized for diverse Intel architectures
- Jackets library — GPU computing library
- JSBSim — open-source flight dynamics model
- JUCE — framework for audio applications
- KDE Frameworks — collection of libraries from the KDE project
- KFRlib — digital signal processing framework
- LEMON — library for optimization and graph problems
- LevelDB — key–value database library
- Libarc — GZIP compressed ARC files
- Libdash — MPEG-DASH streaming library
- libLAS — reading and writing geospatial data encoded in the ASPRS laser (LAS) file format
- libsigc++ — typesafe callbacks
- LibRaw — free and open-source software library for reading raw files from digital cameras
- libSBML — application programming interface (API) for the SBML (Systems Biology Markup Language)
- LIBSVM — sequential minimal optimization (SMO) algorithm for kernelized support vector machines
- Libx — DirectX .X files graphics library
- Loki — collection of design patterns
- LIVE555 — multimedia streaming library
- Metakit — embedded database library
- Microsoft Cognitive Toolkit — deep learning toolkit
- Microsoft Foundation Class Library — object-oriented library for developing desktop applications for Windows
- Microsoft SEAL — homomorphic encryption library
- mlpack — machine learning and AI library
- Mobile Robot Programming Toolkit — robotics research library
- Number Theory Library — number theory
- Open Asset Import Library — library to import and export 3D models
- Object Windows Library — Object Windows Library, superseded by VCL
- Open Cascade — CAD and 3D modeling library
- Open Asset Import Library — 3D model import library to provide a common API for different 3D asset file formats
- OpenCV – computer vision and machine learning library
- OpenFOAM — computational fluid dynamics toolkit
- OpenH264 — real-time encoding and decoding video streams in the H.264/MPEG-4 AVC format
- OpenImageIO — image processing library
- Open Inventor — higher layer of programming for OpenGL
- OpenNN — neural networks library
- OpenVDB — sparse volume data library
- openFrameworks — creative coding toolkit
- OpenRTM-aist — robotics middleware library
- Oracle Template Library — database access that supports IBM Db2 and Open Database Connectivity
- Orfeo toolbox — remote sensing image processing library
- OR-Tools — operations research and optimization library
- Parallel Augmented Maps — ordered sets, ordered maps, and augmented maps.
- Parallel Patterns Library — Microsoft library that provides features for multicore programming
- PhysX — physics simulation engine
- POCO C++ Libraries — general-purpose libraries for software development
- Poppler — PDF rendering library
- Protocol Buffers — data serialization library
- Qt — cross-platform widget toolkit
- QuantLib — quantitative finance library
- RocksDB — key–value database library
- ROOT — data analysis framework from CERN
- ROS — robotics middleware
- Scintilla — source code editing component
- SDL – Simple DirectMedia Layer, cross-platform development library for multimedia applications
- SFML – Simple and Fast Multimedia Library
- Shark – open-source machine learning library
- Shogun — machine learning toolbox
- SFML — multimedia library
- Skia — 2D graphics library
- Snappy — compression library
- Sound Object Library — music and audio development
- Standard Template Library — library of containers and algorithms
- Stapl — parallel computing library
- SymbolicC++ — symbolic computation library
- TBOX — scientific computing library
- TerraLib — GIS library
- Tesseract OCR — optical character recognition engine
- Threading Building Blocks — parallel computing library
- ThreadWeaver — concurrency framework
- Tiny-dnn — lightweight deep learning library
- TinyXML — lightweight XML parser
- Tkrzw — key–value databases
- VTD-XML — XML processing library
- wxWidgets — cross-platform GUI toolkit
- x265 — video encoding library for HEVC
- XGBoost — gradient boosting library
- Windows Template Library — Win32 development
- wxWidgets – cross-platform GUI library
Tools
[edit]- Akonadi — a C++/Qt framework and storage service for personal information management
- BALL – framework and set of algorithms and data structures for molecular modelling and computational structural bioinformatics
- Boehm garbage collector – conservative garbage collector
- CEGUI — C++ GUI library
- ClanLib – video game SDK
- CMake — cross-platform build system for C++ projects
- Confidential Consortium Framework – blockchain infrastructure framework
- DaviX – WebDAV client
- Doxygen — documentation generator for C++ and other languages
- FLTK — Fast Light Toolkit, cross-platform GUI library
- Fox toolkit — C++ GUI toolkit
- GDB — GNU Project debugger, often used with C and C++
- gtkmm — official C++ interface for the popular GUI library GTK
- HOOPS Visualize — 3D computer graphics
- HPX — partitioned global address space Parallel programming Runtime System
- JUCE — cross-platform C++ audio and GUI framework
- LessTif — free clone of Motif GUI toolkit
- MFC — Microsoft Foundation Class library
- Nana — modern C++ GUI toolkit
- Parasoft C/C++test — set of tools for testing C and C++ source code
- PTK Toolkit — 2D rendering engine and SDK, and portability options.
- Qt — cross-platform C++ GUI toolkit
- Rogue Wave — C++ GUI toolkit
- TnFOX — C++ GUI toolkit
- Ultimate++ — cross-platform C++ GUI framework
- Valgrind — tool suite for debugging and profiling C/C++ programs
- wxWidgets — cross-platform C++ GUI toolkit
- x265 — encoder for creating digital video streams in the High Efficiency Video Coding (HEVC/H.265) video compression format
- Xcas — computer algebra system
Web tools
[edit]- ATL Server – web-based applications
- CppCMS – high-performance web development framework for C++
- Wt – C++ web application framework inspired by AJAX and Qt
- CppCMS – high-performance web development framework for C++
- Crow – microframework for building C++ web APIs
- Drogon – asynchronous C++ HTTP application framework
- Pistache – RESTful framework for lightweight C++ web servers
- TreeFrog Framework – full-stack MVC web framework for C++
- Wt – C++ web application framework inspired by AJAX and Qt
Notable software written in C++
[edit]See also
[edit]- Free software programmed in C++
- List of C# software
- List of C software and tools
- List of Java frameworks
- List of JavaScript libraries and Comparison of JavaScript-based web frameworks
- List of Python software
- List of Ruby software and tools
- List of Visual Basic .NET software and tools
- List of tools for static code analysis
- List of C++ computer books
- Outline of C++
Conferences and groups
[edit]References
[edit]- https://awesomecpp.com/
- https://github.com/fffaraz/awesome-cpp
- https://hackingcpp.com/cpp/tools/ecosystem.html
External links
[edit]- https://isocpp.org/ – The C++ Foundation