Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 162803
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T11:27:21+00:00 2026-05-11T11:27:21+00:00

I have yet to come up with a satisfactory way to manage the development,

  • 0

I have yet to come up with a satisfactory way to manage the development, build, and deployment of my Perl applications. I’d like to hear how you have solved this problem and/or what you would like to have in an application build system that you don’t have now.

Please describe your application type (is it a web app, does it run on a server, or do you bundle it using PAR or PerlApp so that you can run on perlless systems).

Key things a build system should provide:

  • Control of libraries.
    • It should be possible to check a library distribution out into my dev directory to use it in my build.
    • It should be easy to execute perl with an @INC value that will use the appropriate directories.
    • It should be possible to get a list of modules that are being sourced from the system perl install.
  • Makefile/Build integration
    • It should be easy to do a global test across the entire application by issuing only one make test or similar command.
  • Version control friendly
    • structure should not interfere with normal usage of CVS, SVN and other version control systems.
  • Cross platform
    • System should operate on Win32 and Unix derived systems at minimum.
    • Ideally, tools should function identically in all places where perl operates.
  • Single Perl install
    • It should not be necessary to install perl into a special directory as part of setting up the environment.
  • Easy start up
    • Starting an application should be a mostly automated process. Something along the lines of Module::Starter or h2xs should be available to layout a basic structure and create any standard files.

Cross-posted at Perlmonks.

  • 1 1 Answer
  • 2 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T11:27:22+00:00Added an answer on May 11, 2026 at 11:27 am

    There’s a lot that I could write about this

    1. Control of libraries – I create my own versions of CPAN with just the modules I want. The latest versions of App::Cpan has several features, such as the -j option to load one-time configurations, to help with this. Once you have this, you can distribute it on a thumb-drive or CD which has all of the modules, the CPAN.pm configuration, and everything else you need. With a little programming you create a run_me script that make it all happen.

    2. Makefile/Build integration – I don’t integrate the Makefiles. That’s the road to disaster. Instead, I do integration testing with the top-level application module, which automatically tests all of its dependencies too. The -t switch to the cpan command is useful to test the module in the current working directory:

      cpan -t .

    There are various intergation testing frameworks that you can use too. You set PERL5LIB to something empty (with only have the core modules in the hard-coded @INC directories) so cpan has to install everything from scratch.

    1. Version control friendly – it doesn’t much matter what you use. Most things have some sort of export where you can get everything without the source control stuff. Git is very nice because it only has a minimum of pollution in the normal cases.

    2. Cross platform – everything I’ve mentioned works just fine on Windows and Unix.

    3. Single Perl install – this part is more tricky, and I think you’re going in the wrong way. Any time multiple things have to depend on the same perl, someone is going to mess it up for the others. I definitely recommend not using the system Perl for application development just so you don’t mess up the operation of the system. At the minimum, every application should install all non-core modules into their own directories so they don’t compete with other applications.

    4. Easy start up – that’s just a simple matter of programming.

    BONUS: I don’t use Module::Starter. It’s the wrong way to go since you have to depend what Module::Starter thinks you should do. I use Distribution::Cooker which simply takes a directory of Template Toolkit templates and processes them to give them your distribution directory. You can do anything that you like. How you get the initial templates is up to you.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Okay this may be a simple question but I have yet to come with
I've been thinking about this problem for a while and have yet to come
I realize this has been asked countless times, but I have yet to come
This is a problem that I come to on occasion and have yet to
I have just come across something that is quite strange and yet I haven't
I've been doing web development for a while and have yet to read a
I seem to run into this situation quite a lot and have yet to
This is a fairly common problem to which I have yet to find an
I am currently playing around with parsing diff files, and have yet to come
I've had this issue come up a couple times doing iPhone development now and

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.