您的位置:首页 > 运维架构 > Linux

Linux 的源码安装工具 CheckInstall

2008-12-18 14:57 323 查看
Checkinstall 是一个能从 tar.gz 类的源代码自动生成 RPM/Debian 或Slackware 安装包的程序。通过
CheckInstall,你就能用几乎所有的 tar.gz 类的源代码来生成“干净”的安装或者卸载包。
引言

经常出现这样的问题:很想试用的程序只有源代码(比如 tar.gz )可用,没人提供 RPM 或者Debian
包。你只好下载源代码,解压,然后手动编译。到目前为止,一切正常。然而,当你想删除它的时候呢?

Makefile
文件只包括了很少情况下的卸载例程。当然,你可以把程序安装到临时文件夹,然后记下所有由程序生成或修改的文件,最后删除他们。但是如果这个程序要经常重新编译,这样做是非常痛苦的,工作量也相当大。Felipe
Eduardo 所写的 CheckInstall 就是用来解决这个问题的。








回页首
用 GNU Autoconf
安装程序

一般说来,我们编译安装一个由 GNU Autoconf 配置的程序是采用如下的步骤:

./configure && make && make install
这个 configure
脚本文件是用来“猜”出一系列系统相关的变量,这些变量是在后面的编译过程要用到的。它将检查系统变量值是否满足编译要求,然后使用这些变量在程序包内每个文件夹下生成
Makefile。此外,configure 脚本还会生成其它文件:

每个文件夹/子文件夹下的一个或多个 Makefile(s)

一个名叫 config.status 的脚本

一个文本文件 config.log

Configure 脚本文件成功运行之后, 你会输入 make 来编译程序,得到你需要的可执行文件。如果 make 成功的完成,你可以使用 make
install 来安装这个程序。








回页首
用 CheckInstall
安装程序

上节我们采用 GNU Autoconf 来编译程序,现在该是换一种方式的时候了。你可以使用CheckInstall 工具。它采用自己的指令
checkinstall 来代替 make install。其他两个指令保留下来跟以前一样,因此,现在这个指令序列使用 CheckInstall 变成:

./configure && make && checkinstall
指令 checkinstall 不仅默认运行了 make install,而且还监测所有安装过程中的写操作。为此,CheckInstall 使用了
Pancrazio de Mauro 所写的程序 Installwatch。在 make install 成功完成之后,CheckInstall 会产生一个
Slackware-,Debian- 或RPM-
安装包,然后按照软件包的默认配置来安装程序,并在当前目录(或标准安装包存储目录)留下一个生成的安装包。你可以通过修改变量 PAK_DIR
来修改这个保存目录。

CheckInstall 并不只是使用 make install,它还可以与其他安装指令相协调。例如,如果安装指令为
setup.sh,那么安装指令序列变成:

./configure && make && checkinstall setup.sh
我们还可以让 CheckInstall 带着很多参数运行。

图 1. 运行命令“checkinstall
–h”显示所有可用的子参数




 

这些子参数大致分为:

本文转自IBM Developerworks中国

请点击此处查看全文
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: