Software Engineers Handbook/Operating Systems/Linux

      Things encountered on Linux

      • GCC
      • Makefiles
      • Tarballs
      • Bash Scripts
      • Free Software Licences
      • Packaging Systems (e.g. deb)
      • Versioning Systems (e.g. CVS, Subversion)


      Free Software Licences

      Due to Linux's origins you will find that a lot of packages available for it use various types of free licenses. It is important that you pay attention to these if you are going to be using the code for any further development.


      Tarballs

      A term referring to a package stored as a file with the extension tar.gz these are often used for distributing source files. They perform a similar function to a zip file.

      Makefiles

      A text file used by the make program to create a program. The script used to make a program uses the form

      program : codefiles
       command to build
      

      The script

      clean:
        rm -f objectfiles program
      

      tells make what to delete when the command make clean is invoked.

      Versioning Systems

      In open development processes many people may be working on the same codebase. To ease the complexity of co-ordinating development the code is sometimes stored in a versioning system. This usually consists of a central repository where developers can "check out" (like you check a book out of a library) pieces of code to work on they then work on it and their changes are merged back in when they have finished.


      Links

      Last modified on 8 June 2009, at 04:04