This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
toolchain [2014/05/08 09:00] viennastar |
toolchain [2014/05/08 11:43] viennastar removed duplicated "called" |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Toolchain ====== | ||
+ | |||
+ | |||
Source development requires a series of tool. Some important (at least important for our development) are listet here: | Source development requires a series of tool. Some important (at least important for our development) are listet here: | ||
==== Version Control ==== | ==== Version Control ==== | ||
- | It is of utmost importance to use some sort of tool which manages different versions of your files. These tools are [[https://en.wikipedia.org/wiki/Revision_control|called version control or revision control tools]]. We use [[https://en.wikipedia.org/wiki/Git_%28software%29|git]] and [[https://github.com/|github]] for our projects. | + | 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 [[https://en.wikipedia.org/wiki/Revision_control|version control or revision control tools]]. We use [[https://en.wikipedia.org/wiki/Git_%28software%29|git]] and [[https://github.com/|github]] for our projects. |
You will need to know how to do the following things with git: | You will need to know how to do the following things with git: | ||
Line 13: | Line 16: | ||
Tutorials and Links | Tutorials and Links | ||
- | * [[http://betterexplained.com/articles/a-visual-guide-to-version-control/|A Visual Guide to Version Control]] | + | * [[http://betterexplained.com/articles/a-visual-guide-to-version-control/|A Visual Guide to Version Control]] (good overview, but ignore the SVN examples) |
* [[https://try.github.io/levels/1/challenges/1| Got 15 minutes and want to learn Git? (Interactive tutorial)]] | * [[https://try.github.io/levels/1/challenges/1| Got 15 minutes and want to learn Git? (Interactive tutorial)]] | ||
- | * [[http://www.lynda.com/Version-Control-tutorials/Fundamentals-Software-Version-Control/106788-2.html|Fundamentals of Software Version Control]] | + | * [[http://www.lynda.com/ALMTFS-tutorials/Overview-software-version-control/106788/115974-4.html|Fundamentals of Software Version Control: Overview of software version control]] |
+ | * [[http://www.lynda.com/ALMTFS-tutorials/Understanding-version-control-concepts/106788/115975-4.htmll|Fundamentals of Software Version Control: Understanding version control concepts]] | ||
+ | * [[http://www.lynda.com/ALMTFS-tutorials/Demo-one-Getting-started/106788/115976-4.html|Fundamentals of Software Version Control: Demo one: Getting started]] | ||
+ | * [[http://www.lynda.com/ALMTFS-tutorials/Demo-two-Handling-oops/106788/115977-4.html|Fundamentals of Software Version Control: Demo two: Handling the :oops"]] | ||
* [[http://www.vogella.com/tutorials/Git/article.html|Git - Tutorial ]] | * [[http://www.vogella.com/tutorials/Git/article.html|Git - Tutorial ]] | ||
Line 21: | Line 27: | ||
==== Development/IDE ==== | ==== Development/IDE ==== | ||
- | Source code can basicly be written in any text editor. We recommend simple text editors (like [[https://de.wikipedia.org/wiki/Kate_%28KDE%29|kate]], [[https://de.wikipedia.org/wiki/Gedit|gedit]], [[https://en.wikipedia.org/wiki/Qt_Creator|QtCreator]], [[https://en.wikipedia.org/wiki/Code::Blocks|Code::Blocks]]) over highly complex (like [[https://en.wikipedia.org/wiki/Eclipse_%28software%29|Eclipse]]). | + | Source code can basically be written in any text editor. We recommend simple text editors (like [[https://de.wikipedia.org/wiki/Gedit|gedit]]). |
==== Compilation ==== | ==== Compilation ==== | ||
Line 60: | Line 66: | ||
Tutorials and Links | Tutorials and Links | ||
- | * [[http://cseweb.ucsd.edu/classes/fa09/cse141/tutorial_gcc_gdb.html|Tutorial of gcc and gdb]] | ||
* [[http://www.cs.umd.edu/~srhuang/teaching/cmsc212/gdb-tutorial-handout.pdf|GDB Tutorial]] | * [[http://www.cs.umd.edu/~srhuang/teaching/cmsc212/gdb-tutorial-handout.pdf|GDB Tutorial]] | ||
+ | * [[http://cseweb.ucsd.edu/classes/fa09/cse141/tutorial_gcc_gdb.html|Tutorial of gcc and gdb]] | ||
* [[http://www.cprogramming.com/gdb.html|A GDB Tutorial with Examples]] | * [[http://www.cprogramming.com/gdb.html|A GDB Tutorial with Examples]] | ||
- | * [[http://cs.baylor.edu/~donahoo/tools/gdb/tutorial.html|How to Debug Using GDB]] | ||
- | * [[https://kb.iu.edu/data/aqsy.html|Step-by-step example for using GDB within Emacs to debug a C or C++ program]] | ||