Hi Dave, I am one of the people who package Perl modules for Debian, and we frequently see all of the above - Module::Install, Module::Build, ExtUtils::MakeMaker and now Dist::Zilla.
As ExtUtils::MakeMaker is now considered deprecated, I would avoid using that. However, each of the other toolchains has its own advantages and disadvantages, and also their own followings. All of the toolchain module authors work really hard to coordinate features with one another, so that they are all equally suitable for distribution with CPAN modules, and are all compatible with one another. (They all support the same META.yml standards, new features typically work across all of them, etc.) I personally prefer Module::Build, though Module::Install is gaining popularity (it operates on top of ExtUtils::MakeMaker but modernizes it and supports tons of neat features. It is also special in that it is designed to be distributed with your modules in inc/ so that you can always use the newest features, and never have to rely on the toolchain available on your target system). Module::Build is now a core module and provides many modern features itself, too. Dist::Zilla is Ricardo SIGNES' contribution to toolchains and provides neat features to automate much of the build process (as Ricardo is a very prolific Perl module author, I think the idea is the automation saves him quite a bit of time and allows him to maintain his stuff to a very high standard). I think asking here will yield lots of different answers, so your best bet is to try each of: * Module::Install * Module::Build * Dist::Zilla out, at least for their introduction/tutorial stuff, then make your decisions accordingly, based on what you're comfortable with. ps. This is of course Perl, we take "There is more than one way to do it" to the extreme sometimes ;) Cheers, Jonathan On Sat, Jul 3, 2010 at 7:59 AM, Dave Cardwell <list+perl-module-auth...@davecardwell.co.uk> wrote: > Please could you advise what the “preferred” build module(s) are > nowadays, when releasing to CPAN? > > I don’t have any particular requirements as it’s a simple module, but > I’m unsure which of Module::Install, Module::Build, > ExtUtils::MakeMaker, etc. I should be using. > > -- > Best wishes, > Dave Cardwell. > > http://davecardwell.co.uk/ > http://cardwellit.com/ >