A lot of people has asked me how can they remove from their boxes a program they compiled and installed from source. Some times -very few- the program's author adds an uninstall rule to their Makefile, but that's not usually the case. This is my primary reason to write CheckInstall. After you ./configure; make your program, CheckInstall will run make install (or whatever you tell it to run) and keep track of every file modified by this installation, using the excelent installwatch utility written by Pancrazio 'Ezio' de Mauro (p@demauro.net).





When make install is done, CheckInstall will create a Slackware, RPM or Debian compatible package and install it with Slackware's installpkg, "rpm -i" or Debian's "dpkg -i" as appropriate, so you can view it's contents with pkgtool ("rpm -ql" for RPM users or "dpkg -l" for Debian) or remove it with removepkg ("rpm -e"|"dpkg -r"). Aditionally, this script will leave you a copy of the installed package in the source directory so you can install it wherever you want, which is my second motivation: I don't have to compile the same software again and again every time I need to install it on another box :-).





NOTE TO SLACKWARE 8.0 USERS:



Slackware 8.0 ships with a statically linked "ln", so any symlinks your installation process creates won't be detected and won't be included in your package. The way to fix this is to substitute your static "ln" for a dynamically linked one, like this one from a Slackware 7.1 installation.



MD5 sum:

5542e47246c9db058ce925d0a795b01e ln.gz

8ca0560a985fee8de70ac545e475ace4 ln





