Created
May 15, 2017 17:33
-
-
Save ckandoth/1f01d8f3692bb8de7f2929f259a4035f to your computer and use it in GitHub Desktop.
Download, install, and build Perl 5.24 in a local folder
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# To follow these instructions, we'll assume your system admins have already installed these essentials: | |
# Debian/Ubuntu system admins should run: | |
sudo apt-get install -y build-essential libexpat1-dev libssl-dev libmysqlclient-dev libxml2-dev | |
# RHEL/CentOS system admins should run: | |
sudo yum groupinstall -y 'Development Tools' | |
sudo yum install -y expat-devel openssl-devel mysql-devel libxml2-devel | |
# Create a folder where you want to install different Perls, and cd into it: | |
# Note that it doesn't need to be your home folder. Put it wherever you want to maintain such software: | |
export PERL_BASE="$HOME/perl" | |
mkdir -p $PERL_BASE | |
cd $PERL_BASE | |
# Download source tarball into a subfolder named src, and untar: | |
curl --create-dirs -L -o src/perl-5.24.1.tar.gz http://www.cpan.org/src/5.0/perl-5.24.1.tar.gz | |
cd src | |
tar -zxf perl-5.24.1.tar.gz | |
# Configure and build, making sure that this non-standard location is baked into the perl binary: | |
cd perl-5.24.1 | |
./Configure -des -Dprefix=$PERL_BASE/perl-5.24.1 -Dotherlibdirs=$PERL_BASE/perl-5.24.1/lib/perl5 | |
make | |
make install | |
# Install dependencies for Ensembl API, VEP, OncoKB, and other tools we use here at MSKCC: | |
curl -sL https://cpanmin.us | $PERL_BASE/perl-5.24.1/bin/perl - --notest -l $PERL_BASE/perl-5.24.1 App::cpanminus JSON::Parse XML::Parser XML::Simple LWP LWP::Simple LWP::Protocol::https Archive::Extract Archive::Tar Archive::Zip CGI DBI Time::HiRes DBD::mysql Encode File::Copy::Recursive Perl::OSType Module::Metadata Statistics::Lite Tie::Autotie Tie::IxHash Log::Log4perl FindBin::Real Getopt::Long Catalyst::Runtime Catalyst::Devel List::Util Test::XML::Simple Test::XPath IO::String Bio::Perl version | |
# Set $PERL5LIB to find these libraries, and set $PATH to use this Perl instead of the system Perl: | |
export PERL5LIB="$PERL_BASE/perl-5.24.1/lib/perl5:$PERL_BASE/perl-5.24.1/lib/perl5/x86_64-linux:$PERL5LIB" | |
export PATH="$PERL_BASE/perl-5.24.1/bin:$PATH" | |
# You can add those 2 lines to the end of your `~/.bashrc` to make it persistent. | |
# But be sure to define `$PERL_BASE` in your `~/.bashrc` too. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment