Ready-to-use C++ development environment container consist of fully open-source, free software.
Image is based on debian:sid
image, since it's bleeding edge and the repositories have the most recent released tool versions available.
This image is compatible with Visual Studio Code's Remote-Containers extension. You have several options to use it.
FROM mustafagilor:cpp-devenv
version: '3'
services:
service-name:
image: "mustafagilor:cpp-devenv"
This image is tested with GitLab CI, and currently used for several projects in production.
image: mustafagilor/cpp-devenv:latest
Debian package name | Description | Version | Available in |
---|---|---|---|
gcc-10 | GNU C Compiler | >= 10.1.0-1 | >= v1.0 |
g++-10 | GNU C++ Compiler | >= 10.1.0-1 | >= v1.0 |
libstdc++-10-dev | GNU Standard C++ Library v3 | >= 10.1.0-1 | >= v1.0 |
libc6-dev | GNU Standard C Library | >= 2.30-7 | >= v1.0 |
gdb | GNU Debugger | >= 9.1-3 | >= v1.0 |
llvm-10 | LLVM Toolchain, Version 10 | >= 1:10.0.0-4 | >= v1.0 |
lldb-10 | LLVM Debugger, Version 10 | >= 1:10.0.0-4 | >= v1.0 |
clang-10 | LLVM C, C++, Objective C and Objective C++ Frontend, Version 10s | >= 1:10.0.0-4 | >= v1.0 |
clangd-10 | Clang Language Server | >= 1:10.0.0-4 | >= v1.0 |
libc++-10-dev | LLVM C++ Standard Library | >= 1:10.0.0-4 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
make | GNU Make | >= 4.2.1-2 | >= v1.0 |
ninja-build | Ninja Build System | >= 1.10.0-1 | >= v1.0 |
autoconf | Automatic Configure Script Builder | >= 2.69-11.1 | >= v1.0 |
automake | Automatic Makefile Generator | >= 1:1.16.2-1 | >= v1.0 |
libtool | GNU libtool | >= 2.4.6-14 | >= v1.0 |
m4 | GNU m4 macro processor (required by autoconf) | >= 1.4.18-4 | >= v1.0 |
cmake | Cross platform build system generator | >= 3.16.3-3 | >= v1.0 |
ccache | Compiler cache for fast recompilation of C/C++ code | >= 3.7.9-1 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
git | fast, scalable, distributed revision control system | >= 1:2.26.2-1 | >= v1.0 |
git-flow | Git extension to provide a high-level branching model | >= 1.12.3-1 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
python3 | Python scripting language interpreter | >= 3.8.2-3 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
pip3 | Python package installer | >= 20.1-2 | >= v1.0 |
conan (via pip3) | C++ Package Manager | >= 1.25.0 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
clang-format-10 | Tool to format C/C++/Obj-C code | >= 1:10.0.0-4 | >= v1.0 |
clang-tidy-10 | clang-based C++ linter tool | >= 1:10.0.0-4 | >= v1.0 |
iwyu | Analyze #includes in C and C++ source files | >= 8.0-4 | >= v1.0 |
cppcheck | tool for static C/C++ code analysis (CLI) | >= 1.90-4 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
valgrind | instrumentation framework for building dynamic analysis tools | >= 1:3.15.0-1 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
libgtest-dev | Google's framework for writing C++ unit tests | >= 1.10.0-3 | >= v1.0 |
libgmock-dev | Google's framework for writing C++ mock code | >= 1.10.0-3 | >= v1.0 |
libbenchmark-dev | Microbenchmark support library, development files | >= 1.5.0-4 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
lcov | Summarise Code coverage information from GCOV | >= 1.14-2 | >= v1.0 |
gcovr | Manages the compilation of coverage information from gcov | >= 4.2-1 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
doxygen | Documentation system for C, C++, Java, Python and other languages | >= 1.8.17-1 | >= v1.0 |
doxygen-latex | Adds latex format support for doxygen document generation | >= 1.8.17-1 | >= v1.0 |
doxygen-doxyparse | multi-language source code parser based on Doxygen | >= 1.8.17-1 | >= v1.0 |
graphviz | rich set of graph drawing tools | >= 2.42.2-4 | >= v1.0 |
Debian package name | Description | Version | Available in |
---|---|---|---|
iproute2 | networking and traffic control tools | >= 5.6.0-1 | >= v1.0 |
procps | /proc file system utilities | >= 2:3.3.16-4 | >= v1.0 |
lsb-release | Linux Standard Base version reporting utility | >= 11.1.0 | >= v1.0 |
This project is licensed under MIT license. See LICENSE file for details.