jptxs has asked for the wisdom of the Perl Monks concerning the following question:

Hello esteemed monks, long time no post.

My company has long distributed perl with our software package (a common practice). We ship a semi-complete default build with a semi-full compliment of modules. For reasons that will soon be obvious, we've always avoided modules that need and avoided distributing as well. Of course, this is due to the fact that if we build on machine A, package up the perl install and it's installed on machine B, then the is invalid.

As with most things in software, this seemed like a good idea until it wasn't. Now I need to use a module that does require (actually I need a module that needs a module that needs a module that needs a module that needs - LWP::Simple->IO::Socket::INET->IO::Socket->IO->XSLoader->Config, for the curious).

I have been trying to find a way to build out a on the fly (without doing a full compile and install, which is verboten). I could even see just building a partial with only those items I need in it, which would seem to be a good idea on the surface since I could avoid items of great potential conflict. The problem with the partial is that I've not yet determined how many of those items I need are likely to be in conflict on similar plaforms (I can live with one per platform {Solaris, Linux, AIX}, but one per version {Solaris8 vs Solaris9} would a large amount of work). I know I could brute force build out a bunch of files and then use tricks to call the right one, but that's a lot of overhead up front and is still not garunteed to work in every case.



We speak the way we breathe. --Fugazi