当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 1 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [转帖]玩转 Ubuntu:如何从源文件安装软件
帖子发表于 : 2006-12-24 10:39 

注册: 2006-10-19 9:17
帖子: 466
送出感谢: 0 次
接收感谢: 0 次
在班图中附带了丰富的软件,这些软件一般使用图形化的自动方式即可轻松安装,但是对于那些刚刚问世的新软件,班图还未收录其中,这时我们就需要用到一种更通用的安装方式:通过手工方式从源文件来安装这些软件。下面就介绍这种手工安装方式的详细步骤。

一、 安装编译程序

因为要编译源代码,所以第一步就是安装编译和构建之类的程序。在班图系统中非常简单,只要执行下面命令就行了:

$ sudo apt-get install build-essential

该命令执行后,从源文件安装软件所需的工具,如gcc、make、g++及其他所需软件就安装好了。

二、下载并编译软件的源代码

当我们下载源文件时,一定要弄清该软件所依赖的库文件和其他程序,并且首先将它们装好。这些信息,通常都能在该开源项目的主页上查找到。做好这些准备工作后,我们就可以进行下面的工作了。因为,软件的源代码通常以压缩文件形式发布,所以需要将其解压到指定目录。命令如下所示:

baby@ubuntu:~$ tar xvzf program.tar.gz

baby@ubuntu:~$ cd program/

在Linux下从源文件安装程序时,有一个通用模式,即配置--编译--安装。但是,此前你最好还是阅读源文件中附带的安装说明,因为对于每个程序,其开发者的指示才是最具权威性的。程序开发者通常将安装说明存放在名为INSTALL 或README。到哪里找这些文件呢?它们在项目主页或源代码主目录中都能找到。

1.配置

构建应用的第一步就是执行configure脚本,该脚本位于程序源文件的主目录下:

baby@ubuntu:~/program$ ./configure

该脚本将扫描系统,以确保程序所需的所有库文件业已存在,并做好文件路径及其他所需的设置工作。如果程序所需的库文件不完全,该配置脚本就会退出,并告诉您还需要哪些库文件或者是哪些版本太旧需要更新。如果遇到这种情况,仅弄到含有该库文件的软件包还是不够的,同时还要找到具有该库文件所有头文件的开发包,在班图中,这样的包一般以-dev作为文件名的结尾。安装好所有需要的库文件后,重新运行配置脚本,直到没有错误提示为止,这说明需要的库文件已经全部安装妥当了。

2.编译

当配置脚本成功退出后,接下来要做的就是编译代码了。具体操作为在源文件的主目录中运行make命令:

baby@ubuntu:~/program$ make

这时,您会看到一串编译输出数据迅速从屏幕上滚过,如果正常的话,系统会返回的提示符状态。然而,如果编译过程中出现错误的话,排错的过程可就不像配置步骤那么简单了。因为,这通常要涉及到源代码的调试,可能源代码有语法错误,或其他错误等等。怎么办?如果您是编程高手,那就自己调试吧!否则,检查该软件的邮件列表等支持渠道,看看是不是已知的bug,如果是就看看别人是怎么解决的,不是就提交一份bug报告吧,也许不久就会有解决办法。

3.安装

当软件成功编译后,最后一步就是将它们安装到系统上。大部分程序的makefile文件中都会有一个用于安装

的函数。需要注意的是,大多时候我们必须作为root用户来安装程序,这样程序就把文件安装到/usr或其他

只有超级用户才有写权限的目录中。依旧是在源文件的主目录下,执行如下命令:

baby@ubuntu:~/program$ sudo make install

好了,这样程序就会安装到您的计算机上了。另外,当您不再使用该程序时,可以使用软件所带的卸载功能,一般程序都会具备此功能。切换至源文件的主目录下,执行以下命令即可:

baby@ubuntu:~/program$ sudo make uninstall

多数情况下,利用上面介绍的方法安装的程序,都位于/usr/local下面。若想让安装的程序文件与班图巡视的文件系统隔离开的话,可以为命令添加项,如下所示:

baby@ubuntu:~/program$ ./configure --prefix=/opt

尽管这样做一般都是有效的,但是也有例外,有些程序根本不理会项;有些程序如含有内核模块的程序,会把它们自己全部放进您的文件系统。

三、小结

上面介绍的手工安装软件的方法虽然是针对班图环境来介绍的,但是各种Linux系统下的从源文件安装应用的

方法基本上都大同小异。只要读者举一反三,触类旁通,在其他系统下遇到从源文件安装软件的情况时,就不会无从下手了。

http://www.dmresearch.net/html/caozuoxi ... /3650.html


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 1 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 4 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译