perl安装模块

转载 2012年03月29日 11:19:10

各种平台下Perl模块的安装方法

来源:http://www.linuxforum.net David lee (2001-04-21 18:11:53)


    Perl到了第五版增加了模块的概念,用来提供面向对象编程的能力。这是Perl语言发展史上  
的一个里程碑。此后,广大自由软件爱好者开发了大量功能强大、构思精巧的Perl模块,极大地  
扩展了Perl语言的功能。CPAN(Comprehensive Perl Archive Network)是internet上Perl模块  
最大的集散地,包含了现今公布的几乎所有的perl模块。  

    几个主要的CPAN站点有:  
    国内:ftp://freesoft.cgi.gov.cn/pub/languages/perl/CPAN  
          http://cpan.qz.fj.cn/  
    国外:http://www.cpan.org/  
          http://www.perl.com/CPAN-local/  

    我在这里介绍一下各种平台下perl模块的安装方法。以安装DBI模块为例。  

1、Linux/Unix下的安装方法:  

    Linux/Unix下安装Perl模块有两种方法:手工安装和自动安装。第一种方法是从CPAN上下载  
您需要的模块,手工编译、安装。第二种方法是联上internet,使用一个叫做CPAN的模块自动完  
成下载、编译、安装的全过程。  

a、手工安装的步骤:  

从CPAN下载了DBI模块1.13版的压缩文件DBI-1.13.tar.gz,假设放在/usr/local/src/下。  
cd /usr/local/src  
解压缩这个文件:  
tar xvzf DBI-1.13.tar.gz  
这时会新建一个DBI-1.13的目录。  
cd DBI-1.13  

生成makefile:  
perl Makefile.PL  
建立模块  
make  
测试模块  
make test  
如果测试结果报告“all test ok”,您就可以放心地安装编译好的模块了。安装模块前,先要  
确保您对perl5安装目录有可写权限(通常以su命令获得),执行:  

make install  

不同于拥有root权限的安装,对于用户,必须在第一步指定一个拥有合适权限的安装模块的目标路径。

比如说perl Makefile.PL PREFIX=/home/USERNAME/usr  (PREFIX前不用加--,貌似PERL的参数不用加--)

让你的脚本能够找到你安装的模块

当你像上面一步那样安装了模块在/home/USERNAME/usr下面后,如果在你的程序中要用到这些模块,你可以通过两种方法实现:

use lib qw(/home/USERNAME/usr/lib/perl5 /home/USERNAME/usr/lib/perl5/site_perl);

或者BEGIN { unshift @INC, qw(/usr/home/USERNAME/usr/local/lib/perl5 /usr/home/USERNAME/usr/local/lib/perl5/site_perl); }

其原理就是perl搜索模块的路径存放在@INC数组中,只要将用户自定义的模块路径加入到该数组中就行

8.模块的使用

此时,模块已经安装完毕。如果在shell下直接运行Perl程序,则模块可以正常调用;但若是在浏览器中运行,由于我们此前设置的路径仅对当前用户起作用,Perl程序还是无法调用新添加的模块。解决的方法很简单,就是在你的脚本最上方加入要调用的模块的路径,这里应该是:

use lib '/home/user/CPAN/share/perl/5.8.4'


在perl脚本外设置perl模块搜索路径

如果需要在perl脚本外设置perl模块搜索路径(比如说要解决安装模块的依赖关系)时,可以通过设置环境变量来解决。方法如下:

export PERL5LIB = /
/home/<username>/usr/lib/

/home/<username>/usr/lib/perl5/site_perl

当然如果你把它放在.bashrc中,此设置便可在以后每次登录系统都会起作用。

export PERL5LIB = 写法一样





现在,写个程序试试吧。  

#!/usr/bin/perl -w  
use strict;  
use DBI;  
..  
   

    上述步骤适合于Linux/Unix下绝大多数的Perl模块。可能还有少数模块的安装方法略有差别,  
所以最好先看看安装目录里的README或INSTALL。另外,上述过程是针对动态链接的Perl编译  
器(所有Linux下预安装的Perl都是动态链接的),如果您在使用一个静态链接的Perl,您需要将  
新的模块静态链接到perl编译器中,可能还需要重启机器。  
   

b、使用CPAN模块自动安装:  

安装前需要先联上线,并且您需要取得root权限。  
perl -MCPAN -e shell  
初次运行CPAN时需要做一些设置,如果您的机器是直接与internet相联(拨号上网、专线,etc.),  
那么一路回车就行了,只需要在最后选一个离您最近的CPAN镜像站点。例如我选的是位于国内的  
中国自由软件库ftp://freesoft.cgi.gov.cn/pub/languages/perl/CPAN 。否则,如果您的机器  
位于防火墙之后,还需要设置ftp代理或http代理。  

获得帮助  
cpan>h  

列出CPAN上所有模块的列表  
cpan>m  

安装模块  
cpan>install DBI  
自动完成DBI模块从下载到安装的全过程。  

退出  
cpan>q  
   
   

2、Win32下的安装方法:  

    在Win32下,建议使用ActiveState的Perl for Win32,即ActivePerl。ActivePerl的主页在:  
http://www.activestate.com/ 。在Win32下,最好也使用专门为ActivePerl定制的Perl模块。从  
CPAN下载的Perl模块不能很好地在ActivePerl下使用。类似于CPAN模块,ActiveState也开发  
了一个自动安装工具叫做PPM(Perl Package Manager)。  

最通常的安装方法是:  
首先联上线  
在dos命令行下启动ppm  
ppm  

获得帮助  
PPM>h  

列出ActiveState站点上所有为Perl模块的清单。  
PPM>search  

安装模块  
PPM>install DBI  
自动完成DBI模块从下载到安装的全过程。  

退出  
PPM>q  

如果您的机器位于防火墙之后,通过http代理上网,那么可以使用下面的方法。  

对于老的基于perl 5.005的ActivePerl版本(ActivePerl 522以下版本,不包括ActivePerl 522),从  
http://www.ActiveState.com/ppmpackages/5.005/zips/下载您需要的Perl模块,例如DBI.zip。  
将其解压缩在C:\TEMP\DBI下  
cd \TEMP\DBI  
ppm install DBI.PPD  

最新的基于perl 5.6的ActivePerl版本(ActivePerl 613及以上版本)的安装方法略有不同。安  
装ActivePerl 613前需要先安装Microsoft的Windows Installer。  
Windows Installer从这里下载:  
http://activestate.com/download/contrib/Microsoft/9x/InstMsi.exe  
ActivePerl 613从这里下载:  
http://activestate.com/download/ActivePerl/Windows/5.6/ActivePerl-5.6.0.613.msi  

对于基于perl 5.6的ActivePerl版本,从  
http://www.activestate.com/PPMPackages/5.6/  
下载您需要的Perl模块的安装描述文件,例如DBI.PPD  
安装模块前需要先联上线  
ppm install DBI.PPD。  
   
   

    以上较为详细地描述了各种平台下Perl模块的安装方法。希望能够帮助国内Perl爱好者们通过  
使用现有大量优秀的Perl模块,避免重复劳动,提高效率,更好发挥Perl语言的强大威力。  

相关文章推荐

Linux上安装Perl模块的两种方法

Linux/Unix下安装Perl模块有两种方法:手工安装和自动安装。第一种方法是从CPAN上下载   您需要的模块,手工编译、安装。第二种方法是联上internet,使用一个叫做CPAN的模块自动完...

perl模块安装

转自:http://www.mike.org.cn/blog/index.php?load=read&id=643 Perl 到了第五版增加了模块的概念,用来提供面向对象编程的能力。这是 Per...
  • cnki_ok
  • cnki_ok
  • 2014年08月19日 10:17
  • 658

如何安装perl模块

如何安装perl模块2010-06-28 星期一 暴雨运行perl脚本时,经常会发现如下类似的错误:forrest@forrest-desktop:~/study/perl/log4perl$ ./l...

如何安装Perl模块的一些方法

如何安装Perl模块的一些方法 Here are some recommended approaches to installing modules from CPAN, as with m...

bugzilla安装过程中,perl模块提示错误,邮件发送问题

 1.在配置bugzilla时遇到报错信息,安装cpan和gcc包,采用yum源来安装, Yum installcpan,yum install gcc分别执行,要修改系统发送bug信...

perl手动安装模块

ACTIVE PERL 如果能联网,ppm install XXX。   手动安装模块的话先看下安装文件readme   一般是如下    perl Makefile.PL    $m...
  • DDRTDTD
  • DDRTDTD
  • 2012年04月30日 18:56
  • 2699

Perl模块的三种安装方法

一般来说,安装perl模块常见有源码、CPAN命令、包管理工具等三种方法,本文以安装Net::Telnet模块为例,简单的介绍一下这三种方法。 第一种,直接去CPAN官网下载源码包安装,详细的安...
  • dc_726
  • dc_726
  • 2013年02月22日 21:55
  • 2741

Linux中Perl模块安装方法

转自于http://www.517sou.net/Article/perl_module_installation_and_common_module.aspx 重要参考网站 http://ww...

如何安装Perl模块

一  用 CPAN 安装 1.  我用的系统是debian,默认只安装了perl-base,也就是可以使用perl,但没有cpan这个工具,故现在系统里安装perl这个工具。 ...

Perl模块安装

各种平台下Perl模块的安装方法 来源:http://www.linuxforum.net David lee (2001-04-21 18:11:53) ...
  • lmm2003
  • lmm2003
  • 2011年10月31日 21:47
  • 1277
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:perl安装模块
举报原因:
原因补充:

(最多只允许输入30个字)