Chinaunix首页 | 论坛 | 博客
  • 博客访问: 101959909
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-18 13:08:07

作者:  出自:


主要有三种主流的形式。

一是rpm软件包,适用于red hat以及支持rpm的Linux版本。这个软件包里是预编译好的软件,安装使用rpm命令。rpm -i是安装的意思。rpm -U是更新的意思。事实上使用rpm -U是万能的,没有安装的会已安装的形式给你安上,已经有老版本的会给你更新,而-i只能安,遇上更新的情况会报错。要卸载,使用rpm -e。另外,经常使用-vv这个开关,是verbose的意思,会告诉你安装更新过程中的详细信息,这样你就可以用rpm -ivv和rpm -Uvv的形式了。rpm安装方式会记录到系统的数据库,而且系统中一般都有rpm的管理器,可以用它来方便的卸载。卸载时会帮你检查其他包对这个包的依赖性。

另一个是deb包,适用于Debian系列的Linux版本。它具有rpm的所有特性。dpkg -i是安装,dpkg -r卸载。另外debian包还有一个特性,你可以让安装过程全自动化,即自动下载并安装,而不用你去搜索、下载再安装。使用apt-get命令即可做到。

最后就是原始的,也是最有灵活性的就是TarBall了。它可不是已经编译好的包,它里面是源代码,这样你就可以修改,砍掉不要的功能,添加想要得功能了。安装一般是把.tar.gz(也有.tar.bz2)解压,命令式gunzip结合tar,我一般是在图形界面里解压,然后再解压后的文件夹里打开一个shell,之后就是看其中的readme之类的说明,按说明的来做。不过一般是三个步骤,先./configure,这一部检测你用的Linux系统的信息,包括环境变量什么的,最后给你的系统量身定做一个makefile,给下一步用;第二步就是把源代码编译出来,make,依据的就是上一步生成的makefile;最后一步是make install,即把编译好的东西装上去。这样三步一般是把程序装载了默认的位置,如果你想指定位置,在第一步时指明,./configure -prefix,这个prefix后面指明你想安装的路径。在最后安装那步之前,可以有make test类似的命令测试一下编译的结果是否顺利。如果在途中要重新编译甚至重新进行第一步,也许会用到make clean之类的命令清除编译出来的object文件,详情不好讲,主要参照包里的readme或者insall之类的文档。

记住一些事实,./configure是因为这个包里有个叫configure的可执行文件或脚本。make是GNU Make,是你系统自带的,当然有可能用别的make,这取决于你所要安装的程序的makefile适用的哪个版本的make的格式,比如安qt时,就用gmake。而make clean和make install中的clean和install是makefile里定义的,而不是固定的make程序的参数。我的意思是,安装Tarball格式的包,虽然有些约定俗成的东西,这三部曲具体怎么进行,一定去看包作者提供的readme或install文档。想了解详情的,请去Google关键词“跟我一起写Makefile”,经典文章。

其实还有一种,就是已经编译好的,给你打成包,解压就能跑。一般用java写得都这么处理,比如我安的luma qq,DGuitar(可以读Guitar Pro谱的开源软件),还有不只是java的eclipse竟也是解压就跑的。

昨个晚上很郁闷,要安装last.fm的Linux版,需要有qt4.3来编译,就去安qt4.3,太恐怖了,编译了一个多小时,终于停下来了,不是编译完成,而是我的硬盘没空间了。这个qt的一大广告是kde,kde就会用它写的。据说qt的类库比MFC要爽的多。回头再说吧。
阅读(497) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2008-12-16 16:07:31

欢迎加入LIUNX群 67759513 交流、学习,没有最好只有更好!