426
This is a useful list of compilers, build systems and IDE's for C++
Compiler
List of C or C++ compilers
- 8cc – A Small C Compiler.
- c – Compile and execute C “scripts” in one go! [MIT]
- Clang – A C compiler for LLVM. Supports C++11/14/1z C11. Developed by LLVM Team. [NCSA]
- GCC – GNU Compiler Collection. Supports C++11/14/1z C11 and OpenMP. [GNU GPL3]
- PCC – A very old C compiler. Supports C99.
- Intel C++ Compiler – Developed by Intel.
- LLVM – Collection of modular and reusable compiler and toolchain technologies.
- Microsoft Visual C++ – MSVC, developed by Microsoft.
- Open WatCom – Watcom C, C++, and Fortran cross compilers and tools. [Sybase Open Watcom Public License]
- Oracle Solaris Studio – C, C++ and Fortran compiler for SPARC and x86. Supports C++11. Available on Linux and Solaris. [OTN Developer License]
- TCC – Tiny C Compiler. [LGPL]
Online Compiler
List of online C or C++ compilers
- codepad – An online compiler/interpreter, and a simple collaboration tool.
- coliru – Online compiler/shell with support for various C++ compilers.
- Compiler Explorer – An interactive compiler with assembly output available.
- CompileOnline – Compile and Execute C++ online on Linux.
- Ideone – An online compiler and debugging tool which allows you to compile source code and execute it online in more than 60 programming languages.
- repl.it – A powerful yet simple tools and platforms for educators, learners, and developers.
- Rextester – Online compiler which provides several compilers(Clang, GCC, MSVC) and several editors.
- Rise4Fun – Online Visual C++ compiler.
- Try It Online – TIO is a family of online interpreters for an evergrowing list of practical and recreational programming languages.
- Wandbox – An online Clang/GCC compiler with Boost available.
Debugger
List of C or C++ debuggers
- Comparison of debuggers – A list of Debuggers from Wikipedia.
- GDB – GNU Debugger.
- LLDB – The LLDB Debugger.
- Metashell – An interactive template metaprogramming shell which includes the MDB metadebugger.
- Valgrind – A tool for memory debugging, memory leak detection, and profiling.
- x64dbg – An open-source x64/x32 debugger for windows.
Integrated Development Environment
List of C or C++ nominal IDEs.
- Anjuta DevStudio – The GNOME IDE. [GPL3]
- AppCode – an IDE for Objective-C, C, C++, and JavaScript development built on JetBrains’ IntelliJ IDEA platform.
- Cevelop – Cross-platform C and C++ IDE based on Eclipse CDT with additional plug-ins.
- CLion – Cross-platform C and C++ IDE from JetBrains.
- Code::Blocks – A free C, C++ and Fortran IDE.
- CodeLite – Another cross-plaform, free C and C++ IDE. [GPL2 with an exception for plugins]
- color_coded – A vim plugin for libclang-based highlighting. [MIT]
- Dev-C++ – A portable C/C++/C++11 IDE.
- Eclipse CDT – A fully functional C and C++ IDE based on the Eclipse platform.
- Geany – Small, fast, cross-platform IDE. [GPL]
- IBM VisualAge – A family of computer integrated development environments from IBM.
- Irony-mode – A C/C++ minor mode for Emacs powered by libclang.
- juCi++ – Cross-platform, lightweight C++ IDE with libclang integration. [MIT]
- KDevelop – A free, open source IDE.
- Microsoft Visual Studio – An IDE from Microsoft.
- NetBeans – An IDE for developing primarily with Java, but also with other languages, in particular PHP, C/C++, and HTML5.
- Qt Creator ⚡️ – A cross-platform C++, JavaScript and QML IDE which is part of the SDK for Qt.
- rtags – A c/c++ client/server indexer with for integration with emacs based on clang.
- Xcode – Developed by Apple.
- YouCompleteMe – YouCompleteMe is a fast, as-you-type, fuzzy-search code completion engine for Vim.
- cquery – A C++ code completion engine for vscode, emacs, vim, etc.
Build Systems
- Bazel – A multi-language, fast and scalable build system from Google. [Apache]
- Bear – A tool to generate compilation database for clang tooling. [GPLv3]
- Buck – A fast build system that encourages the creation of small, reusable modules over a variety of platforms and languages including C++ developed and used at Facebook. Written in Java. [Apache]
- clib – Package manager for the C programming language. [MIT]
- CMake – Cross-platform free and open-source software for managing the build process of software using a compiler-independent method. [BSD]
- C++ Archive Network – Cross-platform C++ Dependency Manager with a lot of packages available.
- Cget – Cmake package retrieval. [Boost] website
- Conan – C/C++ Package Manager, open sourced. [MIT]
- CPM – A C++ Package Manager based on CMake and Git.
- FASTBuild – High performance, open-source build system supporting highly scalable compilation, caching and network distribution.
- Hunter – CMake driven cross-platform package manager for C++. [BSD-2]
- MesonBuild – An open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible.
- Ninja – A small build system with a focus on speed.
- Scons – A software construction tool configured with a Python script.
- Sconsolidator – Scons build system integration for Eclipse CDT.
- Spack – A flexible package manager that supports multiple versions, configurations, platforms, and compilers. [Apache-2.0/MIT]
- tundra – High-performance code build system designed to give the best possible incremental build times even for very large software projects.
- tup – File-based build system that monitors in the background for changed files.
- Premake – A tool configured with a Lua script to generate project files for Visual Studio, GNU Make, Xcode, Code::Blocks, and more across Windows, Mac OS X, and Linux.
- Vcpkg – C++ library manager for Windows, Linux, and MacOS. [MIT]
- waf – Python-based framework for configuring, compiling and installing applications. [BSD] website
- XMake – A C/C++ cross-platform build utility based on Lua. [Apache]