3 use App::FatPacker -run_script;
7 fatpack - Command line frontend for App::FatPacker
13 $ fatpack trace [--to=trace-file|--to-stderr] [--use=MODULE]
16 Compiles myscript.pl (as in "perl -c") and writes out a trace file containing
17 every module require()d during the compilation.
19 The trace file is called 'fatpacker.trace' by default; the --to option
22 If you pass --to-stderr fatpack writes the trace to STDERR instead.
24 You cannot pass both --to and --to-stderr.
26 If the --use option specifies a module (or modules, if used multiple
27 times) those modules will be additionally included in the trace output.
31 $ fatpack packlists-for Module1 Module2 Module3
33 Searches your perl's @INC for .packlist files containing the .pm files for
34 the modules requested and emits a list of unique packlist files to STDOUT.
36 These packlists will, in a pure cpan-installation environment, be all non-core
37 distributions required for those modules.
39 Unfortunately most vendors strip the .packlist files so if you installed
40 modules via e.g. apt-get you may be missing those modules; installing your
41 dependencies into a L<local::lib|local::lib> first is the preferred workaround.
45 $ fatpack tree fatlib packlist1 packlist2 packlist3
47 Takes a list of packlist files and copies their contents into a tree at the
50 This tree should be sufficient to 'use lib' to make available all modules
51 provided by the distributions whose packlists were specified.
57 Recurses into the 'lib' and 'fatlib' directories and bundles all .pm files
58 found into a BEGIN block which adds a virtual @INC entry to load these files
59 from the bundled code rather than disk.
63 Current basic recipe for packing:
65 $ fatpack trace myscript.pl
66 $ fatpack packlists-for `cat fatpacker.trace` >packlists
67 $ fatpack tree `cat packlists`
68 $ (fatpack file; cat myscript.pl) >myscript.packed.pl
70 =head1 COPYRIGHT, LICENSE, AUTHOR
72 See the corresponding sections in L<App::FatPacker>.