专家答疑 Perl常见问题汇总

开发 架构
Perl语言虽然不是最主流的编程语言,但是他也有很多值得借鉴的地方,这里向大家简单介绍一下Perl常见问题, 希望本文介绍对你有所帮助。

本文和大家重点讨论一下Perl常见问题,Perl的标准发行版(由Perl发展小组负责维护)仅以原始码形式发行,相信通过这些常见问题的解答你对Perl编程语言一定会有新的认识。

Perl常见问题集合

   ◆Perl常见问题:哪些平台上有Perl?要到哪里去找?

  Perl的标准发行版(由Perl发展小组负责维护)仅以原始码形式发行。您可在http://www.Perl.com/CPAN/src/latest.tar.gz处取得。这个档案的格式是POSIXtar档案柜,再以gzip格式压缩。这套原始码完全不需任何移植工作便可轻易地在绝大多数的Unix系统(Perl的原生系统),以及Plan9、VMS、QNX、OS/2,和Amiga上编译安装完成。尽管有谣传说(即将推出的)第5.004版或许能直接在WindowsNT上成功地编译和安装,但这尚待证实。适合32位元的微软系统和苹果系统、以执行档形式发行的Perl各可在http://www.Perl.com/CPAN/ports/这个目录底下找到。由於这两个不属於标准发行的一部分,它们可能(事实上的确)和基本的Perl有多方面的不同。要确切知道到底哪些地方不同,您得自行查阅它们 各自的发行说明。这些差异可能是正面的(譬如它们可能附有一些原始码发行的Perl所没有的延伸,提供专属某一平台的特殊功能),亦或负面的(例如它们可能是植基於比较老旧的Perl原始码发行版)。

  一个实用、专为Win32Perl使用者编写的FAQ可在 http://www.endcontsw.com/people/evangelo/Perl_for_Win32_FAQ.html处取得。


  ◆Perl常见问题:要如合取得以执行档形式发行的Perl?

  不管为什麽您的作业系统业者没有将C编译器附在所卖的作业系统中,最好的方法是到网路上去抓一份gcc的执行档,然後用它来编译Perl。CPAN上所放的gcc执行档仅专门提供几个特别难拿到免费编译器的平台,而不是给任何Unix系统的。

  您的第一步应该是查看http://www.Perl.com/CPAN/ports这个档案,看看可以拿到哪些安装资料。http://www.cs.ruu.nl/~piet/Perl5dos.html提供了一份有关在DOS上安装Perl的资料;而http://www.cs.ruu.nl/~piet/Perlwin3.html则是关於在Windows3.1上安装的资料。


  ◆Perl常见问题:我的系统里没有C编译器。要如何编译Perl?

  因为您没有C编译器,您是没指望了,而您的经销商则该拿去当作祭拜列位升阳神的供品。不过说这些风凉话无济於事。
  您首先需要做的是替您的系统找一个gcc的执行档。参阅和您的作业系统相关的各UsenetFAQs,看到哪里可以找到这种作业系统的gcc执行档。

  我直接将Perl的执行档从一台机器上复制到另一台机器上,但是程式跑不起来。那大概是您忘了复制程式库,或者是程式库的路径不同的关系。您真的应该在那台要安装Perl的机器上将整套发行从头编译,然後打makeinstall来安装。其他的方法大多注定要失败。

  有一个简单的方法可用来检查和确定东西有没有装对地方--把编入Perl的@INC阵列(Perl用它来寻找程式库的路径)印出:Perl-e'printjoin("\n",@INC)'
  如果这个指令列出了任何在您系统上不存在的路径,那麽您或许得将适当的程式库移到这些地方,或者制做适当的symlinks、aliases或捷径。
  您或许会想看看HowdoIkeepmyownmodule/librarydirectory?。
  我抓回了原始码,试着编译Perl,但是gdbm/dynamicloading/malloc/linking/...部分失败。要如何将它搞定?
细读INSTALL这个档案,这是原始码发行版里面的一个档案。有时候自动设定程式(Configure)对某些较不寻常的系统、平台特质、或变异会不知所措。该档案对该如何处这类的问题,大都有详细的说明。#p#

  ◆Perl常见问题:Perl有哪些模组和延伸?CPAN是什麽?CPAN/src/...又代表什麽?

  CPAN代表的是「大Perl档案库网络」(ComprehensivePerlArchiveNetwork),一个在全世界数十台机器之间相互映射的巨大档案库。CPAN包含了原始码、对各非原生系统的移植、使用说明、程式,以及许多由第叁类团体所写的模组和延伸,从各商业品牌的资料库介面、到键盘/萤幕控制,乃至全球资讯网漫游及CGI程式皆一应具全。CPAN的总主机是ftp://ftp.funet.fi/pub/languages/Perl/CPAN/,但您也可以透过这个位址:http://www.Perl.com/CPAN/CPAN.html来自动连接一个在地理位置上最接近您的站。至於这个设计的运作原理,请看http://www.Perl.com/CPAN(最後头没有斜线)的说明。
  CPAN/路径/...是CPAN站台上头的档案的命名规范。CPAN代表一个CPAN映射的基准目录,然後其馀的路径是由该目录到一个档案的路径。例如,如果您使用ftp://ftp.funet.fi/pub/languages/Perl/CPAN来做您的CPAN站,那麽CPAN/misc/japh这个档案便可以从ftp://ftp.funet.fi/pub/languages/Perl/CPAN/misc/japh抓下来。

  由於目前CPAN档案库中已经有数百个模组,因此几乎任何您所能想到的用途,大概都已经有现成的模组可以办到。目前在CPAN/modules/by-category/底下的类别包括了Perl核心模组、协助发展模组、作业系统介面、网路、周边设备、不同processes间之沟通、资料型态工具、资料库介面、使用者介面、与其他语言介面、档名、档案系统、档案锁定、软体国际化及地方化、全球资讯网支援、伺服软体工具、档案库和档案压缩、图形变换处理、电子邮件及新闻讨论群、程式流程控制工具、filehandles和输入/输出、微软视窗模组,以及杂项模组等。

  ◆Perl常见问题:是不是有一个经ISO【国际标准局】或ANSI【美国国家标准局】认可的Perl版本?

  当然没有。Larry认为他得先被认可後然後才会轮到Perl。

  ◆Perl常见问题:MacPerl

  这是讨论麦金塔Perl的邮递论坛。详情请连络「mac-Perl-request@iis.ee.ethz.ch」。还有您可以由MatthiasNeeracher(MacPerl的创造及维护者)的网页http://www.iis.ee.ethz.ch/~neeri/macintosh/Perl.html连到许多有趣的MacPerl站台,以及事先编译好的应用程式/MPW发展工具。

  ◆Perl常见问题:Perl5-Porters

  这是Perl的核心发展小组用来讨论语言本身除错和修改的邮递论坛。您可寄信到Perl5-porters-request@Perl.org,在信中正文的地方写上「help」,便可收到有关的订阅资料。

  ◆Perl常见问题:NTPerl

  这是讨论Win32Perl5(WindowsNT和Win95)的邮递论坛。如欲订阅,寄信到ListManager@ActiveWare.com,在信中正文的地方写上:
subscribePerl-Win32-Users
  这个用Perl写的邮递论坛管理软体会自动找出您的位址,然後将您加入名单中。如果您要取消订阅,寄信到同一个地方,在正文处注明:unsubscribePerl-Win32-Users
  您也可以连到http://www.activeware.com/,然後选择「MailingLists」,便可加入或离开这个邮递论坛了。

  ◆Perl常见问题:Perl-Packrats

  这是用来讨论Perl资料的储存管理等相关事宜,特别是有关大Perl档案库网路(CPAN)的邮递论坛。有意订阅者可emailmajordomo@cis.ufl.edu,文中注明:subscribePerl-packrats
  这个也是用Perl写的邮递论坛管理软体会自动找出您的位址,然後将您加入名单中。如果您要取消订阅,寄信到同一个地方,於正文处将相同的订阅指令前加上「un」,像这样:unsubscribePerl-packrats
  存有comp.lang.Perl.miscposts的档案库

  ◆Perl常见问题:试过DejaNews或AltaVista了吗?

  ftp.cis.ufl.edu:/pub/Perl/comp.lang.Perl.*/monthly有自1989年12月起(缺1991年8月份)至1993年12月止的完整收藏。每个月的posts是以一个大档案的方式存放。

  您可能会想要一个功能比较完备的讯问和抽取系统,而不只是能将档案名称列印出来;最好是一个使用索引作快速寻找的引擎,且至少可以按作者、日期、主题、thread(一如trn),或许还有关键字,来作搜索。作者所知道最好的方法是MH套件的pick指令,但是如果拿它来搜索上万篇文章的话真的是很慢。
  如果您曾经找到、或知道到哪儿可找到残缺的部分,请告知:Perlfaq-suggestions@Perl.com。


  ◆Perl常见问题:Perl训练课程

  虽然有些大型的训练公司提供各种Perl的训练课程,但您可能会较顷向於找真正密切投入Perl发展的人来教您。Perl发展小组中两位知名的成员--TomChristiansen和RandalSchwartz,加上二人手下的众爪牙,联手提供各项有关Perl的专业入门讲座和研讨课程。这些课程包括了公开座谈,私人企业员工训练计画,以及直接飞到科罗拉多和奥勒冈上课等。详情请见http://www.Perl.com/Perl/info/training.html。

     ◆Perl常见问题:如果发现bugs要向何处报告?

  如果您发现Perl解译器或标准发行中的模组有bugs,想报知Perl发展小组的话,请使用Perl发行中所附的Perlbug程式,或将您的报告email到Perlbug@Perl.com。
  如果您想报告的bug是有关某个非标准发行的Perl(详见「哪些平台上有Perl?」一题的答案)、某可执行档形式的发行,或是某非标准的模组(譬如Tk、CGI等),那麽请参考它所附的使用说明,以确定最合适报告bugs的地方。

  详情请见使用手册中Perlbug一篇(附於Perl5.004或以後版本中)。

  ◆Perl常见问题:什麽是Perl.com、Perl.org,和PerlInstitute?

  Perl.org是PerlInstitute的正式传播媒介。TPI(ThePerlInstitute)的座右铭是「帮助他人帮Perl助人」(或差不多这个意思)。这是一个非营利性的组织,主旨在支援Perl的发展、文献,和传播。目前TPI的领导人包括了LarryWall、TomChristiansen,和RandalSchwartz,这些名字或许您曾在这篇文章的其他地方见过。

  Perl.com是TomChristiansen注册的网域。早在Perl.org成立之前他便创立了这个站台,做为公共服务之用。这是Perl国度的公共电台,所有Perl东西的资讯交易所,该站的网页不接受登载任何商业广告、光鲜的GIF看板,或者是(啊!)Javaapplets。

  ◆Perl常见问题:如何学着用Perl来写物件导向程式?

  Perltoot(附在5.004、或更新版之中)是一个很好的起点。此外,Perlobj、Perlref,及Perlmod都是很有用的参考资料;而Perlbot则还提供了一些非常好的技巧和心得。

【编辑推荐】

  1. Perl常见问题集锦
  2. Perl常见问题专家解答
  3. Perl引用中直接引用用法解析
  4. Perl语法 解析Perl变量使用
  5. 技术分享 解析Perl模块创建和导入方法
责任编辑:佚名 来源: csdn.net
相关推荐

2010-07-21 09:16:47

Perl常见问题

2013-11-14 15:47:29

SDN问题答疑

2010-07-21 09:10:02

Perl常见问题

2011-04-07 09:05:19

Ubuntu 11.0

2012-03-13 16:48:20

微软Windows Ser

2012-05-16 11:16:25

Windows Ser

2009-10-22 15:39:21

综合布线施工常见问题

2012-03-02 09:42:05

2013-07-23 10:37:41

软件定义存储软件定义存储

2011-01-12 10:15:08

Ubuntu 11.0

2010-05-13 13:27:23

2009-09-22 09:22:03

.NET常见问题

2012-02-06 10:37:07

Java

2020-10-18 12:00:27

前端开发架构

2020-12-28 11:08:18

MySQL数据库服务器

2011-04-26 16:39:30

照片打印机

2010-07-15 13:34:32

Perl随机数

2014-03-26 10:01:28

2011-04-07 16:43:23

MySQL数据库

2010-04-06 13:49:08

CentOS系统
点赞
收藏

51CTO技术栈公众号