This is an old revision of the document!
Source development requires a series of tool. Some important (at least important for our development) are listet here:
It is important to keep track of different versions of source code files during a software development process. Especially if multiple developer work on the same project, it is often required to view and review changes, undo possible errors, synchronize the source code file, … Tools which take care of this are called called version control or revision control tools. We use git and github for our projects.
You will need to know how to do the following things with git:
Tutorials and Links
Source code can basicly be written in any text editor. We recommend simple text editors (like gedit).
Each source code file has to be compiled using a compiler (in our case a C++ compiler. In the world of Linux, there are two main compilers: GCC and Clang.
You will need to know how to do the following things with a compiler:
Tutorials and Links
To avoid compiling each source code file manually, build automation tools are used. make is the most popular build automation tool in the Linux/Unix area. In addition to classic build automation tools, cmake provides a higher level abstraction and can be used to create make files or configuration for other build automation tools (like Visual Studio).
You will need to know how to do the following things with make/cmake:
Tutorials and Links
The debugger is a tool which helps a software developer finding bugs in his code. For Linux environments, the gdb can be used.
You will need to know how to do the following things with gcc:
Tutorials and Links