Features
- Cover Type: Paperback with 538 pages
- ISBN 10 Number: 1565921267
- ASIN: B00007FYFE
Product Description
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 human being 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
--This text refers to an out of print or unavailable edition of this title.
The publisher, O'Reilly and Associates
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 human being 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
--This text refers to an out of print or unavailable edition of this title.
Reader Reviews
This review is from: Porting UNIX Software (Nutshell Handbooks) (Paperback)
Unfortunately a large amount of the material in this book has become outdated -- autoconf ("./configure") and friends have successfully made hand-configuring most packages a thing of the past. Many of the constraints and issues in the book are not problems on modern systems -- gcc is still a bear, but it's a rare system that doesn't have the space to keep around all stages of the bootstrap. If you have any sysadmin background, a lot of the book will be repetition; but if you are new to sysadmining (or porting), or are willing to skip over the bits you already know, it's still worth reading or skimming. In addition there are still useful tidbits despite these issues. The discussion of terminal information, while a bit esoteric for some readers, is detailed. Although the OS's that the author uses for examples are older, the general principles still apply (especially BSD vs. SysV). The standards information is still useful, and the general "how to persuade a package to compile on a different OS" is excellent. It also could be useful for the programmer -- being generally familiar with this book may help you write code that will be easier to port, and will definitely help you if you're porting your own code (look at the section on emulating unavailable behaviors.) Don't expect to get a full 500 pages of useful information -- but the remaining pages are still worth the read.
Comment | |
(Report this)