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
|