System and Network Administration lecture in color

Installing new software:

Software installation concepts:

Package:

Installation:

Why is installation so difficult?

Dependencies:

Portability

Backout:

Backout strategies:

Vendor backout approaches

Unix freeware packages:

Extension conventions:

Must bootstrap this process!

Kinds of packages:

Compiling software:

Kinds of executable images:

Inside a.out:

Making an a.out: gcc

           file.c                        source code (human-readable) 
             |
 [/usr/local/lib/gcc/.../cc1]            first-stage C compiler. 
             |
           file.o  /usr/lib/libc.a       c compile-time library
                \   /                    (reusable functions) 
            [/usr/bin/ld]                STATIC LINKING: add needed 
                  |                        library functions
                a.out  /usr/shlib/libc.so  c runtime library
                     \  /                  (reusable, shareable functions)
             [/usr/lib/ld.so]            DYNAMIC LINKING
                      |
           running IMAGE of a.out        never stored in a file. 

The players:

Naming conventions:

Taking things apart

ar: taking apart .a's

nm: taking apart .o's

Process execution environment:

Static linking: (ld)

Very important notes on linking:

Result of static linking:

Execution model:

Files differ in what kind of pages they're loaded into

Dynamic linking process:

This is relatively easy to break:

Static and dynamic directory binding:

Compiler options:

Compiler caveat:


lecture in color

/comp/150NET/notes/install-old.php
downloaded on Nov-23-2009 03:13:00 PM,
was last modified on Feb-17-2004 10:48:29 PM.

All lecture note content is copyright 2004 by
Alva L. Couch, Computer Science, Tufts University