Steffen Müller > PAR-1.002 > PAR::Tutorial


Annotate this POD (5)


New  6
Open  12
Stalled  3
View/Report Bugs
Source   Latest Release: PAR-1.011


PAR::Tutorial - Cross-Platform Packaging and Deployment with PAR


This is a tutorial on PAR, first appeared at the 7th Perl Conference. The HTML version of this tutorial is available online as


On Deploying Perl Applications

 % -rootpw="Z1ON0101"
 Perl v5.6.1 required--this is only v5.6.0, stopped at line 1.
 BEGIN failed--compilation aborted at line 1.

PAR, the Perl Archive Toolkit

Simple Packaging

PAR Loaders

Dependency Scanning

Perl Packager: pp

How it works

Aggregating multiple programs

Cross-platform Packages

The Anatomy of a PAR file

Special files

Advantages over perlcc, PerlApp and Perl2exe

MANIFEST: Best viewed with Mozilla

META.yml: Metadata galore

SIGNATURE: Signing and verifying packages

Perl Servlets with Apache::PAR

Hon Dah, A-par-che!

On-demand library fetching

Code Obfuscation

Accessing packed files

Packing GUI applications

Precompiled CPAN distributions

Platform-specific Tips

Thank you!

Bonus Slides: PAR Internals

Overview of's Implementation

Code References in @INC

Source Filtering without Filter::* Modules

Source Filtering without Filter::* Modules (cont.)

Overriding DynaLoader::bootstrap

Anatomy of a Self-Contained PAR executable

Self-Bootstrapping Tricks

Thank you (again)!


PAR, pp,, parl

ex::lib::zip, Acme::use::strict::with::pride

App::Packer, Apache::PAR, CPANPLUS, Module::Install


Audrey Tang <> is the official PAR website. You can write to the mailing list at <>, or send an empty mail to <> to participate in the discussion.

Please submit bug reports to <>.


Copyright 2003, 2004, 2005, 2006 by Audrey Tang <>.

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


syntax highlighting: