Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: What to tell Module::Build, and where?

by sundialsvc4 (Abbot)
on Apr 20, 2008 at 17:58 UTC ( [id://681812]=note: print w/replies, xml ) Need Help??


in reply to What to tell Module::Build, and where?

Many folks deal with an analog of this same problem with regard to “shared-hosting plans” for websites. You're running as a non-root guest, in a shared environment along with hundreds or even thousands of other sites, and this environment is being updated from time-to-time (you hope...) by the ISP vendor. Meanwhile, the site-specific environment used by your website must be maintained. In addition, you want to keep mirrors of each site's environment on your own development machine:   even when the several sites that you're responsible for are completely different, you want to be able to manage them all with an easy rsync.

You'll find a wealth of existing information here if you search for keywords like “shared hosting” and “PERL5LIB,” and you should do that next. I think it will be much more helpful than anything I could repeat here.

I maintain each website that I maintain, from a separate login account on my own systems. Each one's bash-login script issues the export commands that the site's own Apache configurations will use. (Each site also has a local VirtualHost configuration as blahblah.dev and this is listed in /etc/hosts, but I digress.)

Anyhow, Perl offers a number of ways to configure the library search-order:   the hard-coded list in the Perl executable; site-wide configuration files; environment variables, and use lib. All of these prepend entries to the @INC list which is always searched front-to-back. Using any one of these methods or some combination, you can set up very specific environments. As you now see, it's a common thing to do. No, the error-messages are not the greatest, but you're certainly not the first person to be head-whacking about them.

Finally, one other footnote-observation:   I don't know if your distro's management software is written in Perl, but that too is a valid consideration. You probably don't want to touch the “global, system-wide” settings. You don't want to install your CPAN-stuff in the global location. All that you want to do is to be sure that when “you” run “your stuff,” always “your library settings” are the ones that Perl will pick up in “your” case.

  • Comment on Re: What to tell Module::Build, and where?

Replies are listed 'Best First'.
Re^2: What to tell Module::Build, and where?
by stiller (Friar) on Apr 21, 2008 at 06:50 UTC

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://681812]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (5)
As of 2024-04-18 05:04 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found