
124
|
Chapter 7: Building the Darwin Kernel
are described in Table 7-1. The source code for these utilities and libraries
can be found in the cctools, mkisofs, Libstreams, and bootstrap_cmds CVS
modules. If you are working with an interim or seed release of Darwin or
Mac OS X that is out of sync with the current Darwin Development Envi-
ronment, you may need to check these utilities out and install them yourself.
A Safety Net
If you have enough disk space to install two copies of Mac OS X, please do so
before you start playing around with your working kernel. That way, you will
have an operating system you can boot into if things go bad. (On most G3 and
G4 Macintoshes, you can hold down the Option key when booting to select
a boot disk.) Most importantly, your spare install of Mac OS X will contain
backups of important files, such as the kernel and critical frameworks. If
you’re low on disk space, why not treat yourself to a FireWire drive? If you
have a newer Macintosh with a built-in FireWire port, you can boot from a
Mac OS X-compatible FireWire drive.
Table 7-1. Darwin development tools
Tool Description CVS module
check_dylib Checks the integrity of a dynamic library. cctools
checksyms Checks a binary to ensure that it adheres to Mac OS X conventions. cctools
cmpshlib Compares two versions of a shared library for compatibility. cctools
decomment Strips C and C++ comments from an input file. bootstrap_cmds
devdump Interactively reads the contents of a device or filesystem image. mkisofs (as dump.c)
hack_li/jointfilesconvert/428949/bgcc Hacks a framework to export backward-compatible symbols. cctools
indr Prepends an underscore to selected symbol names in an object file. cctools
isodump Interactively reads the contents of an ISO 9660 image. mkisofs
isoinfo Reads information from an ISO 9660 image. Use isoinfo -h fora usage
summary.
mkisofs
isovfy Verifies an ISO image. mkisofs
kern_tool Supports cross-compilation of the kernel; a hacked version of the nm
utility.
cctools
mkhybrid Creates a hybrid ISO 9660/Joliet/HFS filesystem. mkisofs
mkisofs Creates a hard link to mkhybrid. mkisofs
mkshlib Creates a host and target shared library. The hostshared library looks
like a static library to the linker, but at runtime, the target shared
library is loaded.
cctools
relpath Finds and prints a relative pathname, given a starting directory and
an ending directory.
bootstrap_cmds
,ch07.839 Page 124 Friday, May 6, 2005 1:34 PM
Comentários a estes Manuais