这几天开始学习Linux了,今天看到了使用源代码编译安装应用程序这部分.
例子是prozilla的源代码编译安装.
了解prozilla是什么?Google一下,得到如下:
prozilla是一个包括text模式及图形模式的下载工具,支持多线程下载,可以增加200%到300%的下载速度.易用性好;Prozgui是 prozilla的图形前端.
基本功能:
1.支持FTP和HTTP,包括重定义
2.支持断点续传
3.完全加速:如果你的带宽没有被限制,那么文件将被用最快的速度下载
4.prozilla使用的连接数目能够被详细列出
5.支持FTPsearch,获得镜像位置然后自动使用PING找出最快的服务器
6.从不同的服务器下载文件的不同部分来加快下载速度.Prozgui是prozilla的图形前端,还支持代理、添加备用连接、带宽限制等功能.
这里有点小郁闷,就是下载这个prozilla的源码压缩包,到官方网站:http://prozilla.genesys.ro/,进不去,不知道是被GFW了,还是网站关闭了,弄了好半天,希望知道情况的同学告知下, 还是在强大的迅雷下下载到了,下载地址为:
http://prozilla.genesys.ro/downloads/prozilla/tarballs/prozilla-2.0.4.tar.bz2
(PS:要用迅雷下呃,其他下载软件没试过,不然用Browser下不到的,估计网站关了)
下面就就记录下源码编译安装prozilla的整个过程:
- 1.检查当前系统的编译环境是否具备
- #rpm -q | grep gcc //当前目录为/root
-
- 2.获得应用程序的源代码的软件包文件
- 前面已经下载好了prozilla-2.0.4.tar.bz2,将其放在/root目录下
-
- 3.解压源代码软件包文件
- #tar xvf prozilla-2.0.4.tar.bz2 //解压prozilla的源代码软件包
-
- 4.进行编译前的配置工作 //这个地方很重要,后面讲了要修改一个文件的,要想成功源码安装prozilla,最好全文看完...
- #cd prozilla-2.0.4 //进入源代码目录
- #./configure
-
- 5.进行程序源代码的编译
- #make //编译pozilla
-
- 6.将编译完成的应用程序安装到系统中
- #make install //安装prozilla
如果是在理想的各个条件都满足的情况下,按照上面的步骤应该就可以成功进行源码编译安装prozilla的.可是理想与现实总是有差距的,-_-,实际环境是很复杂的.下面就说说我在上面安装过程的实际状况.
在第1步的时候,就遇到了问题,我当时自定义安装RHEL5.5时没有安装GCC的编译环境.(这是通过后来配置prozilla的安装属性提示出错知道的)
于是 要解决这个问题.这个RPM包的依赖问题比较复杂(对于我这样的新手来说),当rpm -ivh安装一个所依赖的包时,提示要安装另一个包,这样进行了2次,我有点不耐烦了,于是上网Google,竟然有7个RPM包要依次安装,OMG.
具体方法见这里:RHEL5 下安装GCC编译环境
然后就是在第4步配置安装属性时出错了.提示:
- onfigure: error: **A (n)curses library was not found. The program needs ncurses to run, Ncurses is freely available at : ftp://ftp.gnu.org/pub/gnu **
意思是一个ncurses的库文件没有发现?我试着翻译的.
ncurses是什么?ncurses 提供字符终端处理库,包括面板和菜单.安装方法请看这里: http://man.chinaunix.net/linux/lfs/htmlbook/chapter06/ncurses.html
查询系统是否已经安装了ncurses的RPM软件包
[root@localhost ~]# rpm -qa|grep ncurses
ncurses-5.5-24.20060715
已经安装了ncurses啊?到底是什么原因,库文件方面的基本不知道,Linux才开始学...
网上实在没有找到类似情况.于是我就下载最新版本的Ncurses5.7的tar包来按安装.我先是指定了--prefix=/usr/local/ncurses(prefix 指源码要安装的路径),可是安装不上去,MS不能指定prefix配置安装(WHY?),于是不指定--prefix,即直接./configur |