MirBSD manpage: perlfaq2(1)

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)


     perlfaq2 - Obtaining and Learning about Perl


     This section of the FAQ answers questions about where to
     find source and documentation for Perl, support, and related

     What machines support perl?  Where do I get it?

     The standard release of perl (the one maintained by the perl
     development team) is distributed only in source code form.
     You can find this at http://www.cpan.org/src/latest.tar.gz ,
     which is in a standard Internet format (a gzipped archive in
     POSIX tar format).

     Perl builds and runs on a bewildering number of platforms.
     Virtually all known and current Unix derivatives are sup-
     ported (perl's native platform), as are other systems like
     VMS, DOS, OS/2, Windows, QNX, BeOS, OS X, MPE/iX and the

     Binary distributions for some proprietary platforms, includ-
     ing Apple systems, can be found http://www.cpan.org/ports/
     directory. Because these are not part of the standard dis-
     tribution, they may and in fact do differ from the base perl
     port in a variety of ways. You'll have to check their
     respective release notes to see just what the differences
     are.  These differences can be either positive (e.g. exten-
     sions for the features of the particular platform that are
     not supported in the source release of perl) or negative
     (e.g. might be based upon a less current source release of

     How can I get a binary version of perl?

     If you don't have a C compiler because your vendor for what-
     ever reasons did not include one with your system, the best
     thing to do is grab a binary version of gcc from the net and
     use that to compile perl with.  CPAN only has binaries for
     systems that are terribly hard to get free compilers for,
     not for Unix systems.

     Some URLs that might help you are:


     Someone looking for a perl for Win16 might look to Laszlo
     Molnar's djgpp port in http://www.cpan.org/ports/#msdos ,
     which comes with clear installation instructions.  A simple
     installation guide for MS-DOS using Ilya Zakharevich's OS/2

perl v5.8.8                2006-06-30                           1

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

     port is available at
     http://www.cs.ruu.nl/%7Epiet/perl5dos.html and similarly for
     Windows 3.1 at http://www.cs.ruu.nl/%7Epiet/perlwin3.html .

     I don't have a C compiler. How can I build my own Perl

     Since you don't have a C compiler, you're doomed and your
     vendor should be sacrificed to the Sun gods.  But that
     doesn't help you.

     What you need to do is get a binary version of gcc for your
     system first.  Consult the Usenet FAQs for your operating
     system for information on where to get such a binary ver-

     I copied the perl binary from one machine to another, but
     scripts don't work.

     That's probably because you forgot libraries, or library
     paths differ. You really should build the whole distribution
     on the machine it will eventually live on, and then type
     "make install".  Most other approaches are doomed to

     One simple way to check that things are in the right place
     is to print out the hard-coded @INC that perl looks through
     for libraries:

         % perl -le 'print for @INC'

     If this command lists any paths that don't exist on your
     system, then you may need to move the appropriate libraries
     to these locations, or create symbolic links, aliases, or
     shortcuts appropriately.  @INC is also printed as part of
     the output of

         % perl -V

     You might also want to check out "How do I keep my own
     module/library directory?" in perlfaq8.

     I grabbed the sources and tried to compile but gdbm/dynamic
     loading/malloc/linking/... failed.  How do I make it work?

     Read the INSTALL file, which is part of the source distribu-
     tion. It describes in detail how to cope with most idiosyn-
     crasies that the Configure script can't work around for any
     given system or architecture.

perl v5.8.8                2006-06-30                           2

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

     What modules and extensions are available for Perl?  What is
     CPAN?  What does CPAN/src/... mean?

     CPAN stands for Comprehensive Perl Archive Network, a ~1.2Gb
     archive replicated on nearly 200 machines all over the
     world.  CPAN contains source code, non-native ports, docu-
     mentation, scripts, and many third-party modules and exten-
     sions, designed for everything from commercial database
     interfaces to keyboard/screen control to web walking and CGI
     scripts.  The master web site for CPAN is
     http://www.cpan.org/ and there is the CPAN Multiplexer at
     http://www.cpan.org/CPAN.html which will choose a mirror
     near you via DNS.  See http://www.perl.com/CPAN (without a
     slash at the end) for how this process works. Also,
     http://mirror.cpan.org/ has a nice interface to the
     http://www.cpan.org/MIRRORED.BY mirror directory.

     See the CPAN FAQ at http://www.cpan.org/misc/cpan-faq.html
     for answers to the most frequently asked questions about
     CPAN including how to become a mirror.

     CPAN/path/... is a naming convention for files available on
     CPAN sites.  CPAN indicates the base directory of a CPAN
     mirror, and the rest of the path is the path from that
     directory to the file.  For instance, if you're using
     ftp://ftp.funet.fi/pub/languages/perl/CPAN as your CPAN
     site, the file CPAN/misc/japh is downloadable as
     ftp://ftp.funet.fi/pub/languages/perl/CPAN/misc/japh .

     Considering that there are close to two thousand existing
     modules in the archive, one probably exists to do nearly
     anything you can think of. Current categories under
     CPAN/modules/by-category/ include Perl core modules;
     development support; operating system interfaces; network-
     ing, devices, and interprocess communication; data type
     utilities; database interfaces; user interfaces; interfaces
     to other languages; filenames, filesystems, and file lock-
     ing; internationalization and locale; world wide web sup-
     port; server and daemon utilities; archiving and compres-
     sion; image manipulation; mail and news; control flow utili-
     ties; filehandle and I/O; Microsoft Windows modules; and
     miscellaneous modules.

     See http://www.cpan.org/modules/00modlist.long.html or
     http://search.cpan.org/ for a more complete list of modules
     by category.

     CPAN is not affiliated with O'Reilly Media.

perl v5.8.8                2006-06-30                           3

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

     Is there an ISO or ANSI certified version of Perl?

     Certainly not.  Larry expects that he'll be certified before
     Perl is.

     Where can I get information on Perl?

     The complete Perl documentation is available with the Perl
     distribution. If you have Perl installed locally, you prob-
     ably have the documentation installed as well: type "man
     perl" if you're on a system resembling Unix. This will lead
     you to other important man pages, including how to set your
     $MANPATH.  If you're not on a Unix system, access to the
     documentation will be different; for example, documentation
     might only be in HTML format.  All proper perl installations
     have fully-accessible documentation.

     You might also try "perldoc perl" in case your system
     doesn't have a proper man command, or it's been misin-
     stalled.  If that doesn't work, try looking in
     /usr/local/lib/perl5/pod for documentation.

     If all else fails, consult http://perldoc.perl.org/ which
     has the complete documentation in HTML and PDF format.

     Many good books have been written about Perl--see the sec-
     tion below for more details.

     Tutorial documents are included in current or upcoming Perl
     releases include perltoot for objects or perlboot for a
     beginner's approach to objects, perlopentut for file opening
     semantics, perlreftut for managing references, perlretut for
     regular expressions, perlthrtut for threads, perldebtut for
     debugging, and perlxstut for linking C and Perl together.
     There may be more by the time you read this.  These URLs
     might also be useful:


     What are the Perl newsgroups on Usenet?  Where do I post

     Several groups devoted to the Perl language are on Usenet:

         comp.lang.perl.announce             Moderated announcement group
         comp.lang.perl.misc                 High traffic general Perl discussion
         comp.lang.perl.moderated        Moderated discussion group
         comp.lang.perl.modules              Use and development of Perl modules
         comp.lang.perl.tk                   Using Tk (and X) from Perl

perl v5.8.8                2006-06-30                           4

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

         comp.infosystems.www.authoring.cgi  Writing CGI scripts for the Web.

     Some years ago, comp.lang.perl was divided into those
     groups, and comp.lang.perl itself officially removed.  While
     that group may still be found on some news servers, it is
     unwise to use it, because postings there will not appear on
     news servers which honour the official list of group names.
     Use comp.lang.perl.misc for topics which do not have a more-
     appropriate specific group.

     There is also a Usenet gateway to Perl mailing lists spon-
     sored by perl.org at nntp://nntp.perl.org , a web interface
     to the same lists at http://nntp.perl.org/group/ and these
     lists are also available under the "perl.*" hierarchy at
     http://groups.google.com . Other groups are listed at
     http://lists.perl.org/ ( also known as
     http://lists.cpan.org/ ).

     A nice place to ask questions is the PerlMonks site,
     http://www.perlmonks.org/ , or the Perl Beginners mailing
     list http://lists.perl.org/showlist.cgi?name=beginners .

     Note that none of the above are supposed to write your code
     for you: asking questions about particular problems or gen-
     eral advice is fine, but asking someone to write your code
     for free is not very cool.

     Where should I post source code?

     You should post source code to whichever group is most
     appropriate, but feel free to cross-post to
     comp.lang.perl.misc.  If you want to cross-post to
     alt.sources, please make sure it follows their posting stan-
     dards, including setting the Followup-To header line to NOT
     include alt.sources; see their FAQ (
     http://www.faqs.org/faqs/alt-sources-intro/ ) for details.

     If you're just looking for software, first use Google (
     http://www.google.com ), Google's usenet search interface (
     http://groups.google.com ),  and CPAN Search (
     http://search.cpan.org ). This is faster and more productive
     than just posting a request.

     Perl Books

     A number of books on Perl and/or CGI programming are avail-
     able.  A few of these are good, some are OK, but many aren't
     worth your money. There is a list of these books, some with
     extensive reviews, at http://books.perl.org/ . If you don't
     see your book listed here, you can write to
     perlfaq-workers@perl.org .

perl v5.8.8                2006-06-30                           5

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

     The incontestably definitive reference book on Perl, written
     by the creator of Perl, is Programming Perl:

             Programming Perl (the "Camel Book"):
             by Larry Wall, Tom Christiansen, and Jon Orwant
             ISBN 0-596-00027-8  [3rd edition July 2000]
             (English, translations to several languages are also available)

     The companion volume to the Camel containing thousands of
     real-world examples, mini-tutorials, and complete programs

             The Perl Cookbook (the "Ram Book"):
             by Tom Christiansen and Nathan Torkington,
                 with Foreword by Larry Wall
             ISBN 0-596-00313-7 [2nd Edition August 2003]

     If you're already a seasoned programmer, then the Camel Book
     might suffice for you to learn Perl.  If you're not, check
     out the Llama book:

             Learning Perl
             by Randal L. Schwartz, Tom Phoenix, and brian d foy
             ISBN 0-596-10105-8 [4th edition July 2005]

     And for more advanced information on writing larger pro-
     grams, presented in the same style as the Llama book, con-
     tinue your education with the Alpaca book:

             Learning Perl Objects, References, and Modules (the "Alpaca Book")
             by Randal L. Schwartz, with Tom Phoenix (foreword by Damian Conway)
             ISBN 0-596-00478-8 [1st edition June 2003]

     If you're not an accidental programmer, but a more serious
     and possibly even degreed computer scientist who doesn't
     need as much hand-holding as we try to provide in the Llama,
     please check out the delightful book

             Perl: The Programmer's Companion
             by Nigel Chapman
             ISBN 0-471-97563-X [1997, 3rd printing Spring 1998]
             http://www.wiley.com/compbooks/chapman/perl/perltpc.html (errata etc)

     If you are more at home in Windows the following is avail-
     able (though unfortunately rather dated).

perl v5.8.8                2006-06-30                           6

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

             Learning Perl on Win32 Systems (the "Gecko Book")
             by Randal L. Schwartz, Erik Olson, and Tom Christiansen,
                 with foreword by Larry Wall
             ISBN 1-56592-324-3 [1st edition August 1997]

     Addison-Wesley ( http://www.awlonline.com/ ) and Manning (
     http://www.manning.com/ ) are also publishers of some fine
     Perl books such as Object Oriented Programming with Perl by
     Damian Conway and Network Programming with Perl by Lincoln

     An excellent technical book discounter is Bookpool at
     http://www.bookpool.com/ where a 30% discount or more is not

     What follows is a list of the books that the FAQ authors
     found personally useful.  Your mileage may (but, we hope,
     probably won't) vary.

     Recommended books on (or mostly on) Perl follow.

                 Programming Perl
                 by Larry Wall, Tom Christiansen, and Jon Orwant
                 ISBN 0-596-00027-8 [3rd edition July 2000]

                 Perl 5 Pocket Reference
                 by Johan Vromans
                 ISBN 0-596-00032-4 [3rd edition May 2000]

                 Beginning Perl
                 by James Lee
                 ISBN 1-59059-391-X [2nd edition August 2004]

                 Elements of Programming with Perl
                 by Andrew L. Johnson
                 ISBN 1-884777-80-5 [1st edition October 1999]

                 Learning Perl
                 by Randal L. Schwartz, Tom Phoenix, and brian d foy
                 ISBN 0-596-10105-8 [4th edition July 2005]

perl v5.8.8                2006-06-30                           7

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

                 Learning Perl Objects, References, and Modules
                 by Randal L. Schwartz, with Tom Phoenix (foreword by Damian Conway)
                 ISBN 0-596-00478-8 [1st edition June 2003]

                 Writing Perl Modules for CPAN
                 by Sam Tregar
                 ISBN 1-59059-018-X [1st edition Aug 2002]

                 The Perl Cookbook
                 by Tom Christiansen and Nathan Torkington
                     with foreword by Larry Wall
                 ISBN 1-56592-243-3 [1st edition August 1998]

                 Effective Perl Programming
                 by Joseph Hall
                 ISBN 0-201-41975-0 [1st edition 1998]

                 Real World SQL Server Administration with Perl
                 by Linchi Shea
                 ISBN 1-59059-097-X [1st edition July 2003]

     Special Topics
                 Perl Best Practices
                 by Damian Conway
                 ISBN: 0-596-00173-8 [1st edition July 2005]

                 Higher Order Perl
                 by Mark-Jason Dominus
                 ISBN: 1558607013 [1st edition March 2005]

                 Perl 6 Now: The Core Ideas Illustrated with Perl 5
                 by Scott Walters
                 ISBN 1-59059-395-2 [1st edition December 2004]

                 Mastering Regular Expressions
                 by Jeffrey E. F. Friedl
                 ISBN 0-596-00289-0 [2nd edition July 2002]

                 Network Programming with Perl
                 by Lincoln Stein
                 ISBN 0-201-61571-1 [1st edition 2001]

perl v5.8.8                2006-06-30                           8

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

                 Object Oriented Perl
                 Damian Conway
                     with foreword by Randal L. Schwartz
                 ISBN 1-884777-79-1 [1st edition August 1999]

                 Data Munging with Perl
                 Dave Cross
                 ISBN 1-930110-00-6 [1st edition 2001]

                 Mastering Perl/Tk
                 by Steve Lidie and Nancy Walsh
                 ISBN 1-56592-716-8 [1st edition January 2002]

                 Extending and Embedding Perl
                 by Tim Jenness and Simon Cozens
                 ISBN 1-930110-82-0 [1st edition August 2002]

                 Perl Debugger Pocket Reference
                 by Richard Foley
                 ISBN 0-596-00503-2 [1st edition January 2004]

     Which magazines have Perl content?

     The first (and for a long time, only) periodical devoted to
     All Things Perl, The Perl Journal contains tutorials,
     demonstrations, case studies, announcements, contests, and
     much more.  TPJ has columns on web development, databases,
     Win32 Perl, graphical programming, regular expressions, and
     networking, and sponsors the Obfuscated Perl Contest and the
     Perl Poetry Contests.  Beginning in November 2002, TPJ moved
     to a reader-supported monthly e-zine format in which sub-
     scribers can download issues as PDF documents. For more
     details on TPJ, see http://www.tpj.com/

     Beyond this, magazines that frequently carry quality arti-
     cles on Perl are The Perl Review (
     http://www.theperlreview.com ), Unix Review (
     http://www.unixreview.com/ ), Linux Magazine (
     http://www.linuxmagazine.com/ ), and Usenix's
     newsletter/magazine to its members, login: (
     http://www.usenix.org/ )

     The Perl columns of Randal L. Schwartz are available on the
     web at http://www.stonehenge.com/merlyn/WebTechniques/ ,
     http://www.stonehenge.com/merlyn/UnixReview/ , and
     http://www.stonehenge.com/merlyn/LinuxMag/ .

perl v5.8.8                2006-06-30                           9

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

     What mailing lists are there for Perl?

     Most of the major modules (Tk, CGI, libwww-perl) have their
     own mailing lists.  Consult the documentation that came with
     the module for subscription information.

     A comprehensive list of Perl related mailing lists can be
     found at:


     Where are the archives for comp.lang.perl.misc?

     The Google search engine now carries archived and searchable
     newsgroup content.


     If you have a question, you can be sure someone has already
     asked the same question at some point on c.l.p.m. It
     requires some time and patience to sift through all the con-
     tent but often you will find the answer you seek.

     Where can I buy a commercial version of perl?

     In a real sense, perl already is commercial software: it has
     a license that you can grab and carefully read to your
     manager. It is distributed in releases and comes in well-
     defined packages. There is a very large user community and
     an extensive literature.  The comp.lang.perl.* newsgroups
     and several of the mailing lists provide free answers to
     your questions in near real-time.  Perl has traditionally
     been supported by Larry, scores of software designers and
     developers, and myriad programmers, all working for free to
     create a useful thing to make life better for everyone.

     However, these answers may not suffice for managers who
     require a purchase order from a company whom they can sue
     should anything go awry. Or maybe they need very serious
     hand-holding and contractual obligations. Shrink-wrapped CDs
     with perl on them are available from several sources if that
     will help.  For example, many Perl books include a distribu-
     tion of perl, as do the O'Reilly Perl Resource Kits (in both
     the Unix flavor and in the proprietary Microsoft flavor);
     the free Unix distributions also all come with perl.

     Where do I send bug reports?

     If you are reporting a bug in the perl interpreter or the
     modules shipped with Perl, use the perlbug program in the
     Perl distribution or mail your report to perlbug@perl.org or
     at http://rt.perl.org/perlbug/ .

perl v5.8.8                2006-06-30                          10

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

     For Perl modules, you can submit bug reports to the Request
     Tracker set up at http://rt.cpan.org .

     If you are posting a bug with a non-standard port (see the
     answer to "What platforms is perl available for?"), a binary
     distribution, or a non-standard module (such as Tk, CGI,
     etc), then please see the documentation that came with it to
     determine the correct place to post bugs.

     Read the perlbug(1) man page (perl5.004 or later) for more

     What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?

     Perl.com at http://www.perl.com/ is part of the O'Reilly
     Network, a subsidiary of O'Reilly Media.

     The Perl Foundation is an advocacy organization for the Perl
     language which maintains the web site http://www.perl.org/
     as a general advocacy site for the Perl language. It uses
     the domain to provide general support services to the Perl
     community, including the hosting of mailing lists, web
     sites, and other services.  The web site
     http://www.perl.org/ is a general advocacy site for the Perl
     language, and there are many other sub-domains for special
     topics, such as


     Perl Mongers uses the pm.org domain for services related to
     Perl user groups, including the hosting of mailing lists and
     web sites.  See the Perl user group web site at
     http://www.pm.org/ for more information about joining,
     starting, or requesting services for a Perl user group.

     http://www.cpan.org/ is the Comprehensive Perl Archive Net-
     work, a replicated worldwide repository of Perl software,
     see the What is CPAN? question earlier in this document.
     Copyright (c) 1997-2006 Tom Christiansen, Nathan Torkington,
     and other authors as noted. All rights reserved.

     This documentation is free; you can redistribute it and/or
     modify it under the same terms as Perl itself.

     Irrespective of its distribution, all code examples here are
     in the public domain.  You are permitted and encouraged to
     use this code and any derivatives thereof in your own

perl v5.8.8                2006-06-30                          11

PERLFAQ2(1)     Perl Programmers Reference Guide      PERLFAQ2(1)

     programs for fun or for profit as you see fit.  A simple
     comment in the code giving credit to the FAQ would be
     courteous but is not required.

perl v5.8.8                2006-06-30                          12

Generated on 2022-12-24 01:00:14 by $MirOS: src/scripts/roff2htm,v 1.113 2022/12/21 23:14:31 tg Exp $ — This product includes material provided by mirabilos.

These manual pages and other documentation are copyrighted by their respective writers; their sources are available at the project’s CVSweb, AnonCVS and other mirrors. The rest is Copyright © 2002–2022 MirBSD.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.

Kontakt / Impressum & Datenschutzerklärung