++ed by:

120 PAUSE users
53 non-PAUSE users.

Author image Ricardo SIGNES 😄
and 106 contributors


Dist::Zilla::App::Command::build - build your dist


version 6.015


  dzil build [ --trial ] [ --tgz | --no-tgz ] [ --in /path/to/build/dir ]


This command is a very thin layer over the Dist::Zilla build method, which does all the things required to build your distribution. By default, it will also archive your distribution and leave you with a complete, ready-to-release distribution tarball.

To go a bit further in depth, the build command will do two things:

  • Generate a directory containing your module, Foo-0.100. This directory is complete. You could create a gzipped tarball from this directory and upload it directly to PAUSE if you so desired. You could cd into this directory and test your module on Perl installations where you don't have Dist::Zilla, for example.

    This is a default behavior of the build command. You can alter where it puts the directory with --in /path/to/build/dir.

  • Generate a gzipped tarball of your module, Foo-0.100.tar.gz. This file could be uploaded directly to PAUSE to make a release of your module if you wanted. Or, you can test your module: cpanm --test-only Foo-0.100.tar.gz. This is the same thing you would get if you compressed the directory described above.

    The gzipped tarball is generated by default, but if you don't want it to be generated, you can pass the --no-tgz option. In that case, it would only generate the directory described above.

Once you're done testing or publishing your build, you can clean up everything with a dzil clean.


  $ dzil build
  $ dzil build --no-tgz
  $ dzil build --in /path/to/build/dir



This will build a trial distribution. Among other things, it will generally mean that the built tarball's basename ends in -TRIAL.

--tgz | --no-tgz

Builds a .tar.gz in your project directory after building the distribution.

--tgz behaviour is by default, use --no-tgz to disable building an archive.


Specifies the directory into which the distribution should be built. If necessary, the directory will be created. An archive will not be created.


Ricardo SIGNES 😏 <rjbs@cpan.org>


This software is copyright (c) 2020 by Ricardo SIGNES.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.