University of Cambridge > > Booking Required - Computing/IT Courses at the CMS > Unix: Building, Installing and Running Software

Unix: Building, Installing and Running Software

Add to your list(s) Download to your calendar using vCal

If you have a question about this talk, please contact Mike Rose.

It is common for a student or researcher to find a piece of software or to have one thrust upon them by a supervisor which they must then build, install and use. It is a myth that any of this requires system privilege. This course demonstrates the building, installation and use of typical software ranging from trivially easy examples (the “configure, make, install” scheme) through to the evils of badly written Makefiles. Common errors and what they mean will be covered and by the end of the course the student should be able to manage their own software without needing to pester their system administrator.


  • Those attending should be able to use a plain text editor (e.g. emacs, gedit, vi) on a Unix system as might be obtained from the Emacs or Vi introductory courses.
  • A basic knowledge of the Unix command line as might be gleaned from the “Introduction to Unix” course is also required.

Topics covered (session 1):

  • Software layout
  • Environment variables
  • Unpacking source distributions
  • configure scripts
  • Building configured software with make
  • Installing configured software
  • Dependencies between packages
  • The pkg-config command

Topics covered (session 2):

  • Phases of building an executable
  • Basic use of make
  • Configuring make with Makefiles
  • Setting options in Makefiles
  • Adding rules to Makefiles
  • Automatic macros
  • Static macros
  • Standard targets

Topics covered (session 3):

  • A real-world, “ugly” example
  • Multi-directory builds and recursive make.

This talk is part of the Booking Required - Computing/IT Courses at the CMS series.

Tell a friend about this talk:

This talk is included in these lists:

Note that ex-directory lists are not shown.


© 2006-2024, University of Cambridge. Contact Us | Help and Documentation | Privacy and Publicity