Your company here — click to reach over 10,000 unique daily visitors

perl.req - Man Page

list requirements for Perl scripts and libraries


perl.req [-h|--help] [-v|--verbose] [-m|--method=strict|normal|relaxed] [FILE...]


perl.req calculates prerequisites for each Perl source file specified on a command line; alternatively, a list of files is obtained from standard input, one file per line.  use, require and do statements are processed.  The output of perl.req is suitable for automatic dependency tracking (e.g. for RPM packaging).

For example, /usr/lib/perl5/File/Temp.pm requires, in particular, perl(Fcntl.pm) >= 1.030 (as of perl-5.8.6).

perl.req is basically a wrapper for B::PerlReq Perl compiler backend.


-m,  --method=method

Use particular method for dependency tracking.  Alternatively, RPM_PERL_REQ_METHOD environement variable can be used to set the method.

The following methods are available:


Search thoroughly and list all requirements.  In particular, list platform-specific (non-UNIX) requirements and requirements found inside eval blocks.

normal (default)

Enable moderate search most acceptable for RPM packaging.  That is, skip files known to be platform-specific; skip platform-specific requirements and those found inside eval blocks; skip most common requirements (e.g. strict.pm).


Enable relaxed mode.  That is, tolerate B::PerlReq failures; in addition to normal method, skip conditional requirements (e.g. require statements inside subroutines); skip do FILE statements; list only essential dependencies.

-v,  --verbose

Increase verbosity.


Written by Alexey Tourbin <at@altlinux.org>, based on an earlier version by Ken Estes <kestes@staff.mail.com>, with contributions from Mikhail Zabaluev <mhz@altlinux.org>.


Initial version of perl.req (part of RPM 3.0) done by Ken Estes in 1999.  Regular expressions were used to extract dependencies. (Later a part of ALT Linux Master 2.0, with modifications from Mikhail Zabaluev.)

Reworked in November 2002: complicated regular expressions were added to enhance search; methods added.  (Later a part of ALT Linux Master 2.2.)

Reworked in September 2003: B::Deparse was utilized to re-format Perl code before dependency extraction; hence more simple and accurate. Decoupled from rpm-build package into rpm-build-perl.  (Later a part of ALT Linux Master 2.4.)

Reworked in December 2004: B::PerlReq was developed.  Released on CPAN, see <http://search.cpan.org/dist/rpm-build-perl/>.


Copyright (c) 2003, 2004 Alexey Tourbin, ALT Linux Team.

This is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

See Also

B::PerlReq, perl.prov


2024-06-10 perl v5.40.0 User Contributed Perl Documentation