All data sets in the Ensembl system are stored in relational databases (MySQL). For each of the Ensembl databases the project provides a specific Perl API. This document aims to explain the installation procedure for Ensembl Perl APIs. As Ensembl takes also advantage of code provided by the BioPerl project, installation of the BioPerl package is part of this description.
Ensembl uses the Concurrent Versions System (CVS) for storing the source code and keeping track of source code revisions. This system will help you keeping up to date with developments and bug fixes. You will need CVS installed if you want to download Ensembl code through anonymous CVS access. If your computer system is protected by a firewall, this firewall needs to allow outgoing connections to TCP port 2401. There is also a web-based CVS repository, which allows you to download Unix tar archives in case CVS access through a firewall is not possible.
Create an installation directory
$ cd $ mkdir src $ cd src
Log into the BioPerl CVS server (using a password of cvs):
$ cvs -d :pserver:cvs@code.open-bio.org:/home/repository/bioperl login Logging in to :pserver:cvs@code.open-bio.org:2401/home/repository/bioperl CVS password: cvs
Install BioPerl (version 1.2.3)
$ cvs -d :pserver:cvs@code.open-bio.org:/home/repository/bioperl checkout -r bioperl-release-1-2-3 bioperl-live
Log into the Ensembl CVS server at Sanger (using a password of CVSUSER):
$ cvs -d :pserver:cvsuser@cvs.sanger.ac.uk:/cvsroot/ensembl login Logging in to :pserver:cvsuser@cvs.sanger.ac.uk:2401/cvsroot/ensembl CVS password: CVSUSER
Install the Ensembl Core Perl API for version 50
$ cvs -d :pserver:cvsuser@cvs.sanger.ac.uk:/cvsroot/ensembl checkout -r branch-ensembl-50 ensembl
If required, install the Ensembl Variation Perl API for version 50
$ cvs -d :pserver:cvsuser@cvs.sanger.ac.uk:/cvsroot/ensembl checkout -r branch-ensembl-50 ensembl-variation
If required, install the Ensembl Functional Genomics Perl API for version 50
$ cvs -d :pserver:cvsuser@cvs.sanger.ac.uk:/cvsroot/ensembl checkout -r branch-ensembl-50 ensembl-functgenomics
If required, install the Ensembl Compara Perl API for verion 50
$ cvs -d :pserver:cvsuser@cvs.sanger.ac.uk:/cvsroot/ensembl checkout -r branch-ensembl-50 ensembl-compara
NB: You can install as many Ensembl APIs as you need in this way.
Set up your environment
You have to tell Perl where to find the modules you just installed.
You can do this by using the use lib
clause in your script
but if you want to make these modules available for all your scripts,
the best way is to add them into the PERL5LIB environment
variable.
Under bash, ksh, or any sh-derived shell:
PERL5LIB=${PERL5LIB}:${HOME}/src/bioperl-live PERL5LIB=${PERL5LIB}:${HOME}/src/ensembl/modules PERL5LIB=${PERL5LIB}:${HOME}/src/ensembl-compara/modules export PERL5LIB
Under csh or tcsh:
setenv PERL5LIB ${PERL5LIB}:${HOME}/src/bioperl-live setenv PERL5LIB ${PERL5LIB}:${HOME}/src/ensembl/modules setenv PERL5LIB ${PERL5LIB}:${HOME}/src/ensembl-compara/modules
NB: If you installed extra Ensembl APIs, don't forget to add their path to the PERL5LIB environment variable.
In case you want to update the Perl APIs to a more recent version — keep in mind that the API and database versions must be identical — you can use a simple CVS command to achieve this.
Change the working directory to the directory into which you originally installed the APIs.
$ cd $ cd src
For each of the APIs, change into its top-directory before issuing the CVS update command. So for the Ensembl Core API, which has been automatically installed into the ensembl directory use the following commands:
$ cd ensembl $ cvs -q update -d -P -r branch-ensembl-50 $ cd ..
CVS will automatically add, modify or delete files so that your working directory will resemble the ensembl-branch you selected.
In case you are asked for a password, repeat the login steps in the installation procedure above. (The password is normally stored in encrypted form in a file in your home directory and remembered between CVS operations.)
© 2024 Inserm. Hosted by genouest.org. This product includes software developed by Ensembl.