Chinaunix首页 | 论坛 | 博客
  • 博客访问: 174784
  • 博文数量: 65
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 720
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-16 08:59
文章分类

全部博文(65)

文章存档

2011年(3)

2010年(3)

2009年(43)

2008年(16)

我的朋友

分类: LINUX

2009-11-12 10:25:51

[root@shan mysqlsla-2.03]# mysqlsla
Can't locate Time/HiRes.pm in @INC (@INC contains: /usr/lib/perl5/5.8.5/i386-lin                                             /perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.4/i3                                             l/5.8.3/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.2/i386-linux-thread                                             nux-thread-multi /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib                                             rl/5.8.4 /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl/5.8.2 /usr/lib/                                             l/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thr                                             86-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi /                                             read-multi /usr/lib/perl5/vendor_perl/5.8.1/i386-linux-thread-multi /usr/lib/per                                             /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5                                             /5.8.2 /usr/lib/perl5/vendor_perl/5.8.1 /usr/lib/perl5/vendor_perl/5.8.0 /usr/li                                             ine 2095.
BEGIN failed--compilation aborted at /usr/bin/mysqlsla line 2095.
[root@shan mysqlsla-2.03]#
其实.pm文件是就是perl的“类库”文件,里面保存了模块化的代码。下面的代码可以解决这个问题

#perl -MCPAN -e 'install Time::HiRes'

perl在5.0之后引入了模块化的概念,实现面向对象的编程。CPAN(Comprehensive Perl Archive Network)是internet上Perl模块最大的集散地,包含了现今公布的几乎所有的perl模块,通过上面的例子,可以获知利用这个格式,可以到CPAN上安装需要的模块。
安装前需要先联上线,并且您需要取得root权限。 
初次运行CPAN时需要做一些设置,如果您的机器是直接与internet相联(拨号上网、专线,etc.),那么一路回车就行了,只需要在最后选一个离您最近的CPAN镜像站点。例如我选的是位于国内的中国自由软件库  。否则,如果您的机器位于防火墙之后,还需要设置ftp代理或http代理。 

几个主要的CPAN站点有:
  国内:ftp://freesoft.cgi.gov.cn/pub/languages/perl/CPAN
  
  国外:
  

类似的还有:
# perl -MCPAN -e 'install Time::HiRes'
# perl -MCPAN -e 'install File::Tail'
# perl -MCPAN -e 'install Date::Parse'
# perl -MCPAN -e 'install Net::Netmask'

Perl到了第五版增加了模块的概念,用来提供面向对象编程的能力。这是Perl语言发展史上的一个里程碑。此后,广大自由软件爱好者开发了大量功能强大、构思精巧的Perl模块,极大地扩展了Perl语言的功能。CPAN(Comprehensive Perl Archive Network)是internet上Perl模块最大的集散地,包含了现今公布的几乎所有的perl模块。
  几个主要的CPAN站点有:
  国内:ftp://freesoft.cgi.gov.cn/pub/languages/perl/CPAN
  
  国外:
  
  我在这里介绍一下各种平台下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
  现在,写个程序试试吧。
  #!/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代理。
  获得帮助
  cpanh
  列出CPAN上所有模块的列表
  cpanm
  安装模块
  cpan install DBI
  自动完成DBI模块从下载到安装的全过程。
  退出
  cpanq
  2、Win32下的安装方法:
  在Win32下,建议使用ActiveState的Perl for Win32,即ActivePerl。ActivePerl的主页在: 。在Win32下,最好也使用专门为ActivePerl定制的Perl模块。从CPAN下载的Perl模块不能很好地在ActivePerl下使用。类似于CPAN模块,ActiveState也开发了一个自动安装工具叫做PPM(Perl Package Manager)。
  最通常的安装方法是:
  首先联上线
  在dos命令行下启动ppm
  ppm
  获得帮助
  PPMh
  列出ActiveState站点上所有为Perl模块的清单。
  PPMsearch
  安装模块
  PPMinstall DBI
  自动完成DBI模块从下载到安装的全过程。
  退出
  PPMq
  如果您的机器位于防火墙之后,通过http代理上网,那么可以使用下面的方法。
  对于老的基于perl 5.005的ActivePerl版本(ActivePerl 522以下版本,不包括ActivePerl 522),从下载您需要的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从这里下载:
  
  ActivePerl 613从这里下载:
  
  对于基于perl 5.6的ActivePerl版本,从PPMPackages/5.6/下载您需要的Perl模块的安装描述文件,例如DBI.PPD安装模块前需要先联上线
  ppm install DBI.PPD。

阅读(1639) | 评论(0) | 转发(0) |
0

上一篇:mysql的调整

下一篇:修复数据表

给主人留下些什么吧!~~