If you work on a UNIX system, a good deal of your most useful software
comes from other people -- your vendor is not the source. This means,
all too often, that the software you want was written for a slightly
different system and that it has to be ported. Despite the best efforts
of standards committees and the admirable people who write the software
(often giving it away for free), something is likely to go wrong when
you try to compile their source code. But help is now here!
Problems can crop up at any stage in porting. Special configuration is
often required before you compile. The source code could call functions
that you've never heard of. Some programs make assumptions about the
hardware they're running on or the terminals they interact with. And you
may even have trouble with the documentation, if it's in a format you're
not used to.
This book deals with the whole life cycle of porting, from setting up a
source tree on your system to correcting platform differences and even
testing the executable after it's built. The book exhaustively discusses
the differences between versions of UNIX and the areas where porters tend
to have problems.
The assumption made in this book is that you just want to get a
package working on your system; you don't want to become an expert in
the details of your hardware or operating system (much less an expert
in the system used by the person who wrote the package!). Many
problems can be solved without a knowledge of C or UNIX, while the
ones that force you to deal directly with source code are explained as
simply and concretely as possible.
Topics covered in this book include:
- Unpacking the software
- Common configuration tasks
- Incompatibilities in makefiles and compilers
- Building documentation
- Variations in system calls, file systems, terminal handling, and
other kernel features
- Commonly used libraries
- Compiler and assembler files
|