DM560, Introduction to Programming in C++

List of IDE and text editors

An Integrated Development Environment (IDE) is a software application that provides comprehensive facilities for software development. The following is a non-exhaustive list of IDEs for C++:
  • NetBeans (linux, mac, win)
  • Visual code (linux, mac, win)
  • Visual studio 2017 community (win)
  • Atom (linux, mac, win)
  • CLion (jetbrains) (linux, mac, win)
  • Eclipse CDT (linux, mac, win)
  • xcode (mac)
In this course you are recommended to use IDEs only for editing programs and to use instead the command line for buidling (compilation and linking) and debugging. Hence, a text editor is all what you need and the following is a list of light text editors:
  • vim (linux)
  • emacs (linux)
  • notepad++ (win)

Compilers

We use GCC in the versions that support C++14 (use flag -std=c++14) hence >= 5. g++ version 5.4 is the default in Ubuntu 16.04 and hence in the terminal room machines.
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-6
From Source (See also https://gcc.gnu.org/wiki/InstallingGCC)
  1. Download and unpack the sources, e.g.:
    wget ftp://gd.tuwien.ac.at/gnu/gcc/releases/gcc-6.2.0/gcc-6.2.0.tar.gz tar xzf gcc-6.2.0.tar.gz
  2. Download prerequisites:
    cd gcc-6.2.0 ./contrib/download_prerequisites
  3. Configure, build, and install (see https://gcc.gnu.org/install/configure.html for information on the options), e.g.,:
    mkdir build cd build ../configure --prefix= --program-suffix=-6 --disable-multilib
    make -j
    make install

File-based dependency-tracking build systems

We use GNU Make. Alternatives are Rake and Waf.