博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
perl的安装
阅读量:2427 次
发布时间:2019-05-10

本文共 4667 字,大约阅读时间需要 15 分钟。

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

perl -MCPAN -e 'install File::Temp'
perl -MCPAN -e 'install Data::Dumper'
perl -MCPAN -e 'install DBI'
perl -MCPAN -e 'install Getopt::Long'
perl -MCPAN -e 'install Storable'

Perl work tips and how to install perl on various platform

1.Can't locate .pm, @INC contains...

Sulution: use the following to refer the .pm
use lib 'path to lib';
2.perl Can't locate object method "new" via package
3.Using variable in expression pattern.
$french =~ s/($fr)/($en)/ig;
4. Very funny problem.
foreach my $column (@$pcolumns)
{
if ($column =~ s/^blocknames*=[s'"]*//i)
{
$self->{_attributes}->{'block_name'} = $column;
}
else
{
$self->{_log} and $self->{_log}->Error("FieldDef:parse: unknown attribut line '$column'n");
print " should die!!n";
return undef; #!!!!!!!!here it does not break and return.
}
}
Maybe should not return inside a loop.
5. exists() for ordinary array
if (grep {$_ eq $val_to_search} (@val_list))
{}
6. Learn a lesson from
unshift @sep, "[".$tpart."_line".$tline_num."_field0";
7. ' value_var = 'nihao_string
This kind of problem, is because there is a 'r' at the line end.
8. In perl 4, you have to modify by this:
foreach ($list as $key => $val)
{
$list[$key] = 'something else';
}
9.Can't locate .pm, @INC contains...
Sulution: use the following to refer the .pm
use lib 'directory to lib';
10.perl Can't locate object method "new" via package
Check the 'package' line in your module, and make sure that it _exactly_ matches (including case) the name in the 'use' statement.
11. You have to refer a class member like this:
my $attributes = $self->{_attributes};
$indelimiter and $delimiter = $indelimiter;
while (my ($key, $val) = each(%$attributes))

=================================================

1 No matter whether you export variable or not, the variable defined in a module is accessiable always outside by $ModuleName'var1. in contrast to sub, you have to export it if want it to be public.

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

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

几个主要的 CPAN 站点有:
国内:
最新更新请查阅 http://cpan.org/SITES.html (推荐)
ftp://mirrors.hknet.com/CPAN 模块镜像
http://mirrors.dayouit.com/CPAN/ 网页镜像
http://cpan.linuxforum.net/ 网页镜像
国外:
http://www.cpan.org/ http://search.cpan.org (推荐)
安装方法
我在这里介绍一下各种平台下 perl 模块的安装方法。以安装DBI模块为例。
Linux/Unix下的安装方法:
Linux/Unix 下安装 Perl 模块有两种方法:手工安装和自动安装。第一种方法是从 CPAN 上下载您需要的模块,手工编译、安装。第二种方法是使用 CPAN 模块自动完成下载、编译、安装的全过程。
手工安装的步骤:
从 CPAN 下载了 DBI 模块 1.13 版的压缩文件 DBI-1.13.tar.gz,假设放在 /usr/local/src/ 下。
cd /usr/local/src
解压缩这个文件,这时会新建一个DBI-1.13的目录。
tar xvzf DBI-1.13.tar.gz
换到解压后的目录: cd DBI-1.13
生成 makefile:perl Makefile.PL
生成模块:make
测试模块(这步可有可无): make test
如果测试结果报告“all test ok”,您就可以放心地安装编译好的模块了。
安装模块前,先要确保您对 perl 5 安装目录有可写权限(通常以 su 命令获得),执行:
make install (mysql服务要正在运行)
现在,试试 DBI 模块吧。如果下面的命令没有给出任何输出,那就没问题。
$>perl -MDBI -e1
上述步骤适合于 Linux/Unix 下绝大多数的 Perl 模块。可能还有少数模块的安装方法略有差别,所以最好先看看安装目录里的 README 或 INSTALL。
使用 CPAN 模块自动安装:
安装前需要先联上网,并且您需要取得root权限。
perl -MCPAN -e shell
初次运行CPAN时需要做一些设置,如果您的机器是直接与因特网相联(拨号上网、专线,etc.),那么一路回车就行了,只需要在最后一步选一个离您最近 的 CPAN 镜像站点。例如我选的是位于国内的ftp://mirrors.hknet.com/CPAN 。否则,如果您的机器位于防火墙之后,还需要设置ftp代理或http代理。下面是 常用 ppm 命令。
获得帮助
cpan>help
列出CPAN上所有模块的列表
cpan>m
安装模块,自动完成DBI模块从下载到安装的全过程。
cpan>install DBI
退出
cpan>quit
Win32下的安装方法:
在 Win32 下,建议使用 ActiveState 的 Perl for Win32,即ActivePerl。ActivePerl 的主页在:
http://www.activestate.com/ 。
在 Win32 下,比较容易的是使用专门为 ActivePerl 定制的 Perl 模块。类似于 CPAN 模块,ActiveState也开发了一个自动安装工具叫做 PPM(Perl Package Manager)。
最通常的安装方法是:
首先联上网,在 dos 命令行下启动 ppm
ppm
获得帮助
PPM>h
列出已安装的 DBI 模块信息
cpan>query DBI
搜索 cpan 所有匹配 DBI 的模块
cpan>search DBI
安装模块,自动完成 DBI 模块从下载到安装的全过程。
PPM>install DBI
退出
PPM>q
如果您的机器位于防火墙之后,通过 http 代理上网,那么可以使用下面的方法。
设定环境变量 HTTP_proxy
C:chunk137895620chunkgt; set HTTP_proxy=http://proxy:8080
如果你的代理需要用户名和密码,你还要设定环境变量: HTTP_proxy_user 和 HTTP_proxy_pass
安装 activeperl 不包括的模块
如果 ppm 没有某个 CPAN 的模块,只要这个模块不需要编译(没有使用 C 等)那你可以把这个模块从 CPAN 下载,解压然后放到你的 activeperl 的库路径里, perl -e "print join @INC" 显示出 perl 的库路径。
activeperl 里不包括所有的 CPAN 模块,其他地方可能提供这些模块的下载,
比如在 activeperl 5.8 的 GD 模块安装请使用如下命令:
>ppm install http://theoryx5.uwinnipeg.ca/ppms/GD.ppd
activeperl 5.6 的 GD 模块安装请使用如下命令:
>ppm install http://theoryx5.uwinnipeg.ca/ppmpackages/GD.ppd
其他 activeperl 模块下载地址请参照 Perl 学习指南 。
以上较为详细地描述了各种平台下 Perl 模块的安装方法。希望能够帮助国内 Perl 爱好者们通过使用现有大量优秀的 Perl 模块,避免重复劳动,提高效率,更好发挥 Perl 语言的强大威力。

ref: http://blog.csdn.net/fanchuan0077/archive/2008/10/15/3080679.aspx

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7916042/viewspace-1028786/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/7916042/viewspace-1028786/

你可能感兴趣的文章
程序员有话说 |当那个不靠谱的程序员跟我做同一个项目时
查看>>
怎样以程序员的方式来用百度呢?
查看>>
程序员是如何运用增长思维找到女朋友?
查看>>
@程序员,离职让企业损失近900亿,还遭疯抢!他凭什么?
查看>>
如何用 Python 一键查房价?
查看>>
累死累活干不过写 PPT 的?新东方年会吐槽视频俞敏洪不罚反奖 12 万!
查看>>
“离开360时,它只给了我一块钱”
查看>>
PDF 翻译神器,再也不担心读不懂英文 Paper 了
查看>>
漫话:如何给女朋友解释什么是RPC
查看>>
@程序员,为什么别人比你优秀?!
查看>>
你的红包狂欢夜,互联网巨头们的流量争夺战
查看>>
春晚过去 4 天了,你卸载百度 APP 了吗?
查看>>
中国移动互联网十年
查看>>
面试官问:请拿出一段体现你水平的代码,我该如何回答?
查看>>
@程序员,沟通这项核心技能你掌握了多少?
查看>>
2019,九问联想贺志强
查看>>
你可以忍受大城市 365 天的孤独,却不能忍受小城市 7 天的热闹
查看>>
35 岁程序员,年后第一天被辞退
查看>>
情人节她说:是的,嫁人当嫁程序员
查看>>
骚操作!代码写情诗 | 程序员有话说
查看>>