curl -L http://install.perlbrew.pl | bash
mkdir /opt/perlbrew
export PERLBREW_ROOT=/opt/perlbrew
export PERLBREW_HOME=/opt/perlbrew
perlbrew init # and follow the directions
perlbrew mirror
m
http://cpan.integra.engr
Integra
9 threads seems good on my quad proc. Skip the tests.
perlbrew install -j 9 --notest 5.18.0
Now you have a shiny new Perl. For modules, let's create environments for dev and for each application. The only shared modules are the core modules.
perlbrew use 5.18.0 # temporarily use this version
perlbrew lib create dev
perlbrew switch 5.18.0@dev # permanently switch to this version and lib.
perlbrew install-cpanm # installed to /opt/perlbrew/bin so all perlbrews can install modules
Modules will now be installed into /opt/perlbrew/libs/perl-5.18.0@dev/lib. Develop all you want here. Install any module you need. This is a playpen for development.
perlbrew lib create appname-prd
perlbrew list
perlbrew use 5.18.0@appname-prd
Install modules however you please. e.g.
alias cpanm='cpanm --mirror=http://cpan.integra.engr'
HARNESS_OPTIONS=j4 cpanm -S --installdeps .../path/to/project
HARNESS_OPTIONS=j4 cpanm -S Module1 Module2 ...
HARNESS_OPTIONS=j4 cpanm -S < list-of-modules.txt
If tests fail, try without the HARNESS_OPTIONS=j4.
Also, cpanm can install specific versions:
cpanm Plack~1.0000 # 1.0000 or later
cpanm Plack~">= 1.0000, < 2.0000" # latest of 1.xxxx
cpanm [email protected] # specific version. same as Plack~"== 0.9990"