74 lines
3.1 KiB
Plaintext
74 lines
3.1 KiB
Plaintext
INSTALL for procps version 2.0.1
|
|
================================
|
|
Please read the NEWS and BUGS files, also.
|
|
==========================================
|
|
|
|
|
|
Re-compiling the package
|
|
========================
|
|
|
|
You want to examine the first 30 or so lines of the Makefile (up to the
|
|
configurability note). The destinations of various things attempt FSSTND
|
|
compliance, and are pretty standard. The CC/LD flags and which libraries you
|
|
use for curses/termcap are here also. It is all annotated there and in a
|
|
readily understood format: directories, program to installdir mapping,
|
|
sub-packages to build, and compilation options. A few extra points worth
|
|
mentioning are:
|
|
|
|
o The SUBDIRS variable is essentially just a list of subdirectories to
|
|
perform a recursive make or make install in. Right now that's just
|
|
ps; the old xproc has been removed because it was entirely redundant.
|
|
o There is also an option to build and link against a libproc.so which
|
|
reduces 'ps' and 'top' sizes by a large fraction. It is on by default,
|
|
so change the value of SHARED if you want.
|
|
o 'make libinstall' will install the library and header files into standard
|
|
system directories for developers of /proc utilities. There are no
|
|
library man pages yet, but the headers are fairly well documented.
|
|
o You may need to change the INCDIRS definition if your system is
|
|
not very standard. The current definition has been tested to work
|
|
on several different systems, though.
|
|
|
|
Once you are satisfied with the top-level Makefile options (and possibly those
|
|
in subdirectories) you compile and install the package like so:
|
|
(ignore innocuous `rcsid' defined-but-not-used warnings.)
|
|
|
|
make distclean # clean-out everything to re-make from scratch
|
|
make # takes about 0.75 minutes on a PPro 200 with SCSI
|
|
su # for write/chown-perms on sys dirs
|
|
make install
|
|
ldconfig -v # update ld.so to use new libproc if SHARED=1
|
|
exit
|
|
make distclean # remove anything that can be rebuilt
|
|
|
|
|
|
Miscellaneous Notes
|
|
===================
|
|
|
|
COMPATIBILITY
|
|
|
|
This code is intended for use with Linux 2.0.xx and 2.2.xx.
|
|
Both libc 5 and libc 6 should work.
|
|
|
|
PS/TOP WCHAN FIELD
|
|
|
|
In past releases, in order to get WCHAN output for ps, you had to
|
|
have a psdatabase for each zImage kernel that you generated from
|
|
the vmlinux unstripped binary with /sbin/psupdate. With this release,
|
|
you should use the System.map automatically generated by Linus' makefile.
|
|
'ps' and 'top' will first use the contents of an environment variable
|
|
"PS_SYSTEM_MAP" and then look for System.map files along
|
|
the followin search path:
|
|
/boot/System.map-V, /boot/System.map, /lib/modules/V/System.map,
|
|
Here 'V' is the output of "uname -r" and looks like "2.2.0".
|
|
Don't forget the dash! In those same locations, remove psdatabase* files.
|
|
|
|
|
|
PARTIAL INSTALLATION
|
|
|
|
If you just want to install one program use the targets
|
|
install_progname and install_progname.X (where X is the man section)
|
|
instead. E.g.
|
|
make install_ps install_ps.1
|
|
Likewise for component packages, e.g.
|
|
make install_psmisc
|