Personal Perl Packages
The local::lib Perl module lets you install packages in a dedicated location under your home directory, so that you don't need permission to install in the O2-wide directories in /n/app or /usr. On this page, we use the naming convention of perl5-O2 for the personal Perl package directory, though you can name it whatever you like. We use the perl/5.40.1 module for setting up local::lib in the instructions below, but it will also work if we make other Perl modules available on O2.
Turning on local::lib
You can set up local::lib so that each time you login, you'll be using a relatively modern version of Perl and local::lib. That way, the modules you install in your local perl5-O2 directory today will be available next time you login.
The following three commands will modify your .bashrc file to always look in your local directory first for Perl packages:
echo 'module load gcc/14.2.0' >> ~/.bashrc
echo 'module load perl/5.40.1' >> ~/.bashrc
echo '[ $SHLVL -eq 1 ] && eval $(perl -I$HOME/perl5-O2/lib/perl5 -Mlocal::lib=~/perl5-O2)' >> ~/.bashrcThe above commands need to be done only once ever.
Alternatively, you can start up local::lib manually whenever you want (once per login), to install new packages in your local perl5-O2 directory, or to use packages in that directory:
module load gcc/14.2.0
module load perl/5.40.1
eval `perl -Mlocal::lib=~/perl5-O2`Using local::lib
That's it! Once you've turned it on, installing Perl modules with tools like cpan or cpanm will automatically install them to your local perl5-O2 directory. To make modules that you installed to your local library available within a Perl script, add a use statement to the top of your script:
#!/usr/bin/env perl
use Nameofmodule;
# rest of code goes here