1PERLUTIL(1) Perl Programmers Reference Guide PERLUTIL(1)
2
3
4
6 perlutil - utilities packaged with the Perl distribution
7
9 Along with the Perl interpreter itself, the Perl distribution installs
10 a range of utilities on your system. There are also several utilities
11 which are used by the Perl distribution itself as part of the install
12 process. This document exists to list all of these utilities, explain
13 what they are for and provide pointers to each module's documentation,
14 if appropriate.
15
17 Documentation
18 perldoc
19 The main interface to Perl's documentation is "perldoc", although if
20 you're reading this, it's more than likely that you've already found
21 it. perldoc will extract and format the documentation from any file
22 in the current directory, any Perl module installed on the system,
23 or any of the standard documentation pages, such as this one. Use
24 "perldoc <name>" to get information on any of the utilities
25 described in this document.
26
27 pod2man and pod2text
28 If it's run from a terminal, perldoc will usually call pod2man to
29 translate POD (Plain Old Documentation - see perlpod for an
30 explanation) into a manpage, and then run man to display it; if man
31 isn't available, pod2text will be used instead and the output piped
32 through your favourite pager.
33
34 pod2html
35 As well as these two, there is another converter: pod2html will
36 produce HTML pages from POD.
37
38 pod2usage
39 If you just want to know how to use the utilities described here,
40 pod2usage will just extract the "USAGE" section; some of the
41 utilities will automatically call pod2usage on themselves when you
42 call them with "-help".
43
44 podchecker
45 If you're writing your own documentation in POD, the podchecker
46 utility will look for errors in your markup.
47
48 splain
49 splain is an interface to perldiag - paste in your error message to
50 it, and it'll explain it for you.
51
52 "roffitall"
53 The "roffitall" utility is not installed on your system but lives in
54 the pod/ directory of your Perl source kit; it converts all the
55 documentation from the distribution to *roff format, and produces a
56 typeset PostScript or text file of the whole lot.
57
58 Converters
59 To help you convert legacy programs to more modern Perl, the pl2pm
60 utility will help you convert old-style Perl 4 libraries to new-style
61 Perl5 modules.
62
63 Administration
64 libnetcfg
65 To display and change the libnet configuration run the libnetcfg
66 command.
67
68 perlivp
69 The perlivp program is set up at Perl source code build time to test
70 the Perl version it was built under. It can be used after running
71 "make install" (or your platform's equivalent procedure) to verify
72 that perl and its libraries have been installed correctly.
73
74 Development
75 There are a set of utilities which help you in developing Perl
76 programs, and in particular, extending Perl with C.
77
78 perlbug
79 perlbug used to be the recommended way to report bugs in the perl
80 interpreter itself or any of the standard library modules back to
81 the developers; bug reports and patches should now be submitted to
82 <https://github.com/Perl/perl5/issues>.
83
84 perlthanks
85 This program provides an easy way to send a thank-you message back
86 to the authors and maintainers of perl. It's just perlbug installed
87 under another name.
88
89 h2ph
90 Back before Perl had the XS system for connecting with C libraries,
91 programmers used to get library constants by reading through the C
92 header files. You may still see "require 'syscall.ph'" or similar
93 around - the .ph file should be created by running h2ph on the
94 corresponding .h file. See the h2ph documentation for more on how to
95 convert a whole bunch of header files at once.
96
97 h2xs
98 h2xs converts C header files into XS modules, and will try and write
99 as much glue between C libraries and Perl modules as it can. It's
100 also very useful for creating skeletons of pure Perl modules.
101
102 enc2xs
103 enc2xs builds a Perl extension for use by Encode from either Unicode
104 Character Mapping files (.ucm) or Tcl Encoding Files (.enc).
105 Besides being used internally during the build process of the Encode
106 module, you can use enc2xs to add your own encoding to perl. No
107 knowledge of XS is necessary.
108
109 xsubpp
110 xsubpp is a compiler to convert Perl XS code into C code. It is
111 typically run by the makefiles created by ExtUtils::MakeMaker.
112
113 xsubpp will compile XS code into C code by embedding the constructs
114 necessary to let C functions manipulate Perl values and creates the
115 glue necessary to let Perl access those functions.
116
117 prove
118 prove is a command-line interface to the test-running functionality
119 of Test::Harness. It's an alternative to "make test".
120
121 corelist
122 A command-line front-end to "Module::CoreList", to query what
123 modules were shipped with given versions of perl.
124
125 General tools
126 A few general-purpose tools are shipped with perl, mostly because they
127 came along modules included in the perl distribution.
128
129 piconv
130 piconv is a Perl version of iconv, a character encoding converter
131 widely available for various Unixen today. This script was
132 primarily a technology demonstrator for Perl v5.8.0, but you can use
133 piconv in the place of iconv for virtually any case.
134
135 ptar
136 ptar is a tar-like program, written in pure Perl.
137
138 ptardiff
139 ptardiff is a small utility that produces a diff between an
140 extracted archive and an unextracted one. (Note that this utility
141 requires the "Text::Diff" module to function properly; this module
142 isn't distributed with perl, but is available from the CPAN.)
143
144 ptargrep
145 ptargrep is a utility to apply pattern matching to the contents of
146 files in a tar archive.
147
148 shasum
149 This utility, that comes with the "Digest::SHA" module, is used to
150 print or verify SHA checksums.
151
152 zipdetails
153 zipdetails displays information about the internal record structure
154 of the zip file. It is not concerned with displaying any details of
155 the compressed data stored in the zip file.
156
157 Installation
158 These utilities help manage extra Perl modules that don't come with the
159 perl distribution.
160
161 cpan
162 cpan is a command-line interface to CPAN.pm. It allows you to
163 install modules or distributions from CPAN, or just get information
164 about them, and a lot more. It is similar to the command line mode
165 of the CPAN module,
166
167 perl -MCPAN -e shell
168
169 instmodsh
170 A little interface to ExtUtils::Installed to examine installed
171 modules, validate your packlists and even create a tarball from an
172 installed module.
173
175 perldoc, pod2man, perlpod, pod2html, pod2usage, podchecker, splain,
176 perldiag, "roffitall|roffitall", File::Find, pl2pm, perlbug, h2ph,
177 h2xs, enc2xs, xsubpp, cpan, instmodsh, piconv, prove, corelist, ptar,
178 ptardiff, shasum, zipdetails
179
180
181
182perl v5.32.1 2021-05-31 PERLUTIL(1)