日期:2014-05-16 浏览次数:20881 次
Linux软件安装通用思路
在Linux系统中,软件安装程序比较纷繁复杂,不过最常见的有两种:
1)一种是软件的源代码,您需要自己动手编译它。这种软件安装包通常是用gzip压缩过的tar包(后缀为.tar.gz)。
2)另一种是软件的可执行程序,你只要安装它就可以了。这种软件安装包通常被是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm。
当然,也有用rpm格式打包的源代码,用gzip压缩过的可执行程序包。只要您理解了以下的思路,这两种形式的安装包也不在话下了。
下面,我们就分成两个部分来说明软件安装思路:
第一部分:搞定.tar.gz
1.首先,使用tar -xzvf来解开这个包,如:
#tar -xzvf apache_1_3_6_tar.gz
这样就会在当前目录中创建了一个新目录(目录名与.tat.gz包的文件名类似),用来存放解压了的内容。如本例中就是apache_1.3.6
2.进入这个目录,再用ls命令查看一下所包含的文件,如:
#cd apache_1.3.6
#ls
你观察一下这个目录中包含了以下哪一个文件:configure、Makefile还是Imake。
1)如果是configure文件,就执行:
#./configure
#make
#make install
2)如果是Makefile文件,就执行:
#make
#make install
3)如果是Imake文件,就执行:
#xmkmf
#make
#make install
3.如果没有出现什么错误提示的话,就搞定了。至于软件安装到什么地方,通常会在安装时出现。否则就只能查阅一下README,或者问问我,:-)
如果遇到错误提示,也别急,通常是十分简单的问题:
1)没有安装C或C++编译器;
确诊方法:执行命令gcc(C++则为g++),提示找不到这个命令。
解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
#rpm -ivh gcc* (哈哈,我们用到了第二种安装方式)
2)没有安装make工具;
确诊方法:执行命令make,提示找不到这个命令。
解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
#rpm -ivh make*
3)没有安装autoconf工具;
确诊方法:执行命令make,提示找不到这个命令。
解决方法:将Linux安装光盘mount上来,然后进入RPMS目录,执行命令:
#rpm -ivh autoconf*
4)缺少某些链接库;
确诊方法:在make时,提示需要某些文件。
解决方法:安装包含这个文件的包,这就需要积累了。
第二部分:搞定.rpm
RPM是Red Hat公司随Redhat Linux推出了一个软件包管理器,通过它能够更加轻松容易地实现软件的安装。
1.安装软件:执行rpm -ivh rpm包名,如:
#rpm -ivh apache-1.3.6.i386.rpm
2.升级软件:执行rpm -Uvh rpm包名。
3.反安装:执行rpm -e rpm包名。
4.查询软件包的详细信息:执行rpm -qpi rpm包名
5.查询某个文件是属于那个rpm包的:执行rpm -qf rpm包名
6.查该软件包会向系统里面写入哪些文件:执行 rpm -qpl rpm包名
[遗留问题:redhat linux系统上有Redhat Linux Packet Manager,就是Redhat的包管理器,所以如果原来机器没装gcc编译器,装二进制码格式的编译器时,就可以直接下载相适应的rpm包来搞定。可是其它变种的linux系统怎么办呢? 有相应格式的二进制编译器软件还是说也可以使用redhat的rpm?]
---ANSWER:其他的发行版也有相应的包管理器,比如debian的包管理器叫dpkg,gentoo的好像可以merge等等。
下面,先再来一篇关于安装可执行程序的文章,说明一下,我用的机器装的是redhat9.0 strike版,所以我就在学校的ftp上下载了相应版本的is0光盘影响文件(3张盘),用虚拟光驱虚拟出三张盘来,便于后面找依赖的rpm格式的其它包的便利。基本上,我装的过程和他的一样,只是不它还多装了个binutils.
--------------------------begin
在quick linux中安装gcc的详细步骤
[ 作者:masenger 转贴自:来源不明 点击数:493 文章录入:admin ]
在quick linux中安装gcc的详细步骤
--- masenger .2004-2005
需要的东东有 :
glibc-devel-2.3.2-11.9.i386.rpm
glibc-kernheaders-2.4-8.10.i386.rpm
gcc-3.2.2-5.i386.rpm
cpp-3.2.2-5.i386.rpm
我手中有三张光盘(red hat linux 9.0)
我要安装gcc编译器,在三张光盘中搜。 如果你没有这三张光盘,你可以到我的网站上去下载.
也可以到internet上去搜索下载.
http://mirrors.kernel.org/redhat/redhat/linux/9/en/os/i386/RedHat/RPMS/
在第二张光盘上发现:gcc-3.2.2-5.i386.rpm
现在将它从ftp传到我的linux中,拷贝到/root/install目录
[root@masenger root]# cd install
[root@masenger install]# ls
gcc-3.2.2-5.i386.rpm telnet-server-0.17-25.i386.rpm
安装gcc :
[root@masenger install]# rpm -ivh gcc-3.2.2-5.i386.rpm
warning: gcc-3.2.2-5.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
error: Failed dependencies:
cpp = 3.2.2-5 is needed by gcc-3.2.2-5
glibc-devel >= 2.2.90-12 is needed by gcc-3.2.2-5
由此看见需要glibc-devel至少2.2.90版本. 在光盘上搜索后找到它.
把它从ftp传到我的linux中,拷贝到/root/install目录
[root@masenger install]# ls
gcc-3.2.2-5.i386.rpm glibc-devel-2.3.2-11.9.i386.rpm telnet-server-0.17-25.i386.rpm
安装glibc-devel :
[root@masenger install]# rpm -ivh glibc-devel-2.3.2-11.9.i386.rpm
warning: glibc-devel-2.3.2-11.9.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
error: Failed dependencies:
kernel-headers is needed by glibc-devel-2.3.2-11.9
kernel-headers >= 2.2.1 is needed by glibc-devel-2.3.2-11.9
由此看见需要kernel-headers至少2.2.1版本. 在光盘上搜索后找到它.
但是你发现没有叫kernel-headers .但是有一个glibc-kernheaders-2.4-8.10.i386.rpm
把它从ftp传到我的linux中,拷贝到/root/install目录
[root@masenger install]# ls
gcc-3.2.2-5.i386.rpm glibc-kernheaders-2.4-8.10.i386.rpm
glibc-devel-2.3.2-11.9.i386.rpm telnet-server-0.17-25.i386.rpm
安装kernel-headers :