Back to: ← Installing the code components
Non-Ensembl Applications Build/Install
Ensembl is built on the following applications:
- CVS - versioning system to allow you to download the Ensembl code
- Perl - Open source scripting language
- Apache and mod_perl - Open source web server
- MySQL - Open source database server
- SQLite - alternative open source database server for session information (if not installing MySQL)
- Dotter - Graphical alignment package
These applications are not version-specific for Ensembl; that is, if you upgrade your Ensembl installation to a newer version when one becomes available, you probably won't need to install new versions of these applications.
All of this software, like all of Ensembl, is Open Source software and can be downloaded and used free of charge. You should, however, check the documentation for each application to see what license it has been released under, particularly if you are installing Ensembl in a commercial environment.
The following instructions assume you have root access to the installation machine. If you do not, get your systems administrator to install this software for you.
You may have some or all of this software installed already. If you have any problems getting the site running with pre-installed software (in particular Apache with mod_perl installed from RPMs), we recommend simply installing the latest version using the following instructions.
CVS
CVS is a software version control system that we use for storing the source code to Ensembl. You will need CVS installed if you want to download the Ensembl source code. It will also help you keep up to date with any bug fixes. We also have a Web-based CVS repository.
To install CVS:
- Download the latest source from http://ftp.gnu.org/non-gnu/cvs/source/stable/1.11.23/ (you may be able to download binaries from here instead if you prefer). At the time of writing this is version 1.11.23 and the file to download is cvs-1.11.23.tar.gz
- Unpack the source in a working directory with:
gunzip < cvs-1.11.23.tar.gz | tar xvf - cd cvs-1.11.23 ./configure make make install
Perl
You will probably already have Perl installed. You need Perl5, version 5.8.0 or higher to run the website. We run the site under Perl 5.8.7. To see if you have Perl installed, and/or to check it's version number, type:
perl -v
If you don't have Perl installed, or need to upgrade, go to http://www.cpan.org/ and choose the 'source code' install. Follow the installation instructions on the web site.
SQLite
- Install SQLite - can be downloaded from http://www.sqlite.org/download.html.
- Install the DBD::SQLite (can be found at http://search.cpan.org/dist/DBD-SQLite/.
MySQL
MySQL is a very popular Open Source relational database system. The easiest way to install MySQL is to use the pre-compiled binaries from http://dev.mysql.com. You can also get source from http://dev.mysql.com if you wish to compile MySQL yourself.
To install MySQL:
- Download the appropriate standard binaries from http://dev.mysql.com/downloads/mysql. Get the current stable version - at the time of writing, this is 5.0.51.
- Create a directory for MySQL to be installed into. A subdirectory of this will hold the databases, so choose somewhere that has sufficient space free - at least 600 GB for the complete set. We will use /data/ as an example. Again, when following these instructions, replace /data/ with whatever path you choose.
- Move the binary tarball to /data/
- Unpack the tarball with:
$ gunzip < mysql-WHATEVER.tar.gz | tar xvf -
Follow the straightforward setup instructions in the INSTALL-BINARY file that comes with MySQL. It should be located in the "mysql-WHATEVER" directory you just unpacked.
Apache & mod_perl
Apache is the web server that the Ensembl site runs on. mod_perl is a module for Apache that enables it to compile perl scripts once rather than each time they are requested, and so makes everything run a lot faster.
Please follow these instructions precisely as often the default version of Apache or mod-perl does not work correctly for Ensembl.
To Install Apache with mod_perl:
- Download the Apache2 source tarball from http://httpd.apache.org/dist/httpd/. Get the current stable version - at the time of writing, this is 2.2.8, and the file to download is httpd-2.2.8.tar.gz.
- Download the mod_perl source from http://www.cpan.org/modules/by-module/Apache2/ . Again, get the latest version, currently this is 2.0.3 and the file to download is mod_perl-2.0.3.tar.gz.
-
Unpack all the sources in a working directory with:
tar zxf httpd-2.2.4.tar.gz tar zxf mod_perl-2.0.3.tar.gz | tar xvf - cd httpd-2.2.4 ./configure --enable-deflate --prefix=Apache directory cd ../mod_perl-2.0.3
The httpd.conf files etc assume you install this in an apache2 subdirectory of your website's server root. -
Build the perl makefile:
perl Makefile.PL PREFIX=Apache directory MP_APXS=Apache directory/bin/apxs
-
Run the 'make' utility:
make
-
...and install
make install
Perl modules
The Ensembl website needs quite a few Perl modules to be installed in order for it to run. These modules can all be downloaded from www.cpan.org, and are all installed in much the same way: Download the module tarball, unpack in a working directory, and install the module:
gunzip < module.tar.gz | tar xvf - cd module perl Makefile.PL make make test make install
The modules that are required are listed below, along with their URLs. The file part of the URL is current at the time of writing - you should install whatever is the latest version of the module.
- Bio::Das::Lite
Lightweight DAS fetcher
http://www.cpan.org/modules/by-module/Bio/Bio-Das-Lite-1.061.tar.gz
- Cache::Memcached
A distributed-memory object caching system, for performance enhancement
http://www.cpan.org/modules/by-module/Cache/Cache-Memcached-1.24.tar.gz
- CGI
Enables Perl scripts to easily parse cgi
http://www.cpan.org/modules/by-module/CGI/CGI.pm-3.27.tar.gz
NOTE: you need to install the latest version to make sure it is compatible with mod_perl2- CGI::Ajax
Used by BioMart
http://www.cpan.org/modules/by-module/CGI/CGI-Ajax-0.697.tar.gz
- CGI::Session
Used by BioMart
http://www.cpan.org/modules/by-module/CGI/CGI-Session-4.40.tar.gz
- Class::Accessor
Used by BioMart
http://www.cpan.org/modules/by-module/Class/Class-Accessor-0.31.tar.gz
- Class::Data::Inheritable
Used by BioMart
http://www.cpan.org/modules/by-module/Class/Class-Data-Inheritable-0.06.tar.gz
- Class::DBI::Sweet
Database abstraction layer, used to access non-genomic databases such as ensembl_website
http://www.cpan.org/modules/by-module/Class/Class-DBI-Sweet-0.09.tar.gz
- Class::Std
Used by BioMart and new session code
http://www.cpan.org/modules/by-module/Class/Class-Std-v0.0.8.tar.gz
- Class::Std::Utils
Used by BioMart
http://www.cpan.org/modules/by-module/Class/Class-Std-Utils-0.0.2.tar.gz
- Compress::Zlib
A compression module for DAS.
http://www.cpan.org/modules/by-module/Compress/Compress-Zlib-1.34.tar.gz
- Compress::Raw::Zlib
A compression module for Mart.
http://www.cpan.org/modules/by-module/Compress/Compress-Raw-Zlib-2.003.tar.gz
- Config::Inifiles
Used by the registry
http://www.cpan.org/modules/by-module/Config/Config-IniFiles-2.38.tar.gz
- Data::UUID
Creates a unique ID
http://www.cpan.org/modules/by-module/Data/Data-UUID-0.11.tar.gz
- DB_File
Used by Mart
http://www.cpan.org/modules/by-module/DB_File/DB_File-1.814.tar.gz
- DBI
A common database interface for Perl
- DBD::Mysql
The MySQL drivers for the DBI interface
http://www.cpan.org/modules/by-module/DBD/DBD-mysql-4.001.tar.gz
- Devel::StackTrace
Used by BioMart
http://www.cpan.org/modules/by-module/Devel/Devel-StackTrace-1.13.tar.gz
- Digest::MD5
calculates a unique checksum for a file
http://www.cpan.org/modules/by-module/Digest/Digest-MD5-2.38.tar.gz
- Exception::Class
Used by BioMart
http://www.cpan.org/modules/by-module/Exception/Exception-Class-1.23.tar.gz
- File::Temp
Used by MartView
http://www.cpan.org/modules/by-module/File/File-Temp-0.21.tar.gz
- GD
A Graphics library
Note: may require additional modules. Please read install docs.
- Hash::Merge
Used to merge data from multiple configuration files
http://www.cpan.org/modules/by-module/Hash/Hash-Merge-0.10.tar.gz
- HTML::Template
Used by BlastView
http://www.cpan.org/modules/by-module/HTML/HTML-Template-2.7.tar.gz
- Image::Size
Used for getting size of images
http://www.cpan.org/modules/by-module/Image/Image-Size-2.992.tar.gz
- IO::String
Used for sequence handling
http://www.cpan.org/modules/by-module/IO/IO-String-1.06.tar.gz
- libxml
Used by BioMart
http://www.cpan.org/modules/by-module/XML/libxml-perl-0.08.tar.gz
- List::MoreUtils
Used by BioMart
http://www.cpan.org/modules/by-module/List/List-MoreUtils-0.22.tar.gz
- Log::Log4perl
Used by BioMart
http://www.cpan.org/modules/by-module/Log/Log-Log4perl-1.07.tar.gz
- LWP
used by DAS to communicate with DAS sources
Note: may require additional modules. Please read install docs.
http://www.cpan.org/modules/by-module/LWP/libwww-perl-5.805.tar.gz
- LWP::ParallelUserAgent
Allows for parallel requests
http://www.cpan.org/modules/by-module/LWP/ParallelUserAgent-2.57.tar.gz
- Mail::Mailer
Used by web forms to send email
http://www.cpan.org/modules/by-module/Mail/MailTools-2.04.tar.gz
- Math::Bezier
Used by drawing code
http://www.cpan.org/modules/by-module/Math/Math-Bezier-0.01.tar.gz
- Number::Format
Used by BioMart
http://www.cpan.org/modules/by-module/Number/Number-Format-1.52.tar.gz
- OLE::Storage_Lite
Used for exporting Excel spreadsheets
http://www.cpan.org/modules/by-module/OLE/OLE-Storage_Lite-0.11.tar.gz
- Parse-RecDescent
used by Excel exporter
http://www.cpan.org/modules/by-module/Parse/Parse-RecDescent-1.94.tar.gz
- PathTools
Used for architecture independent file path manipulation
http://www.cpan.org/modules/by-module/File/PathTools-3.29.tar.gz
- PDF::API2
used by Image exporter for exporting as PDF
http://www.cpan.org/modules/by-module/PDF/PDF-API2-0.72.003.tar.gz
- Readonly
Used by BioMart
http://www.cpan.org/modules/by-module/Readonly/Readonly-1.03.tar.gz
- SOAP::Lite
used by DAS to communicate with DAS sources
Note: may require additional modules. Please read install docs.
http://www.cpan.org/modules/by-module/SOAP/SOAP-Lite-0.60a.tar.gz
- Spreadsheet::WriteExcel
used for exporting Excel spreadsheets
http://www.cpan.org/modules/by-module/Spreadsheet/Spreadsheet-WriteExcel-2.12.tar.gz
- Storable
used to store and restore data structures (part of standard Perl distribution)
http://www.cpan.org/modules/by-module/Storable/Storable-2.18.tar.gz
- Sub::Uplevel
Used by BioMart
http://www.cpan.org/modules/by-module/Sub/Sub-Uplevel-0.14.tar.gz
- Sys::Hostname::Long
Used by website startup process
http://www.cpan.org/modules/by-module/Sys/Sys-Hostname-Long-1.4.tar.gz
- Template::Plugin::Number::Format
Used by BioMart
http://www.cpan.org/modules/by-module/Template/Template-Plugin-Number-Format-1.01.tar.gz
- Template::Toolkit
Used by BioMart
http://www.cpan.org/modules/by-module/Template/Template-Toolkit-2.15.tar.gz
- Test::Exception
Used by BioMart
http://www.cpan.org/modules/by-module/Test/Test-Exception-0.27.tar.gz
- Test::Simple
Used by BioMart
http://www.cpan.org/modules/by-module/Test/Test-Simple-0.86.tar.gz
- Time::HiRes
Used for code profiling
http://www.cpan.org/modules/by-module/Time/Time-HiRes-1.9719.tar.gz
- version
Required by Class::Std
http://search.cpan.org/CPAN/authors/id/J/JP/JPEACOCK/version-0.76.tar.gz
- XML::DOM
Used by BioMart
http://www.cpan.org/modules/by-module/XML/XML-DOM-1.44.tar.gz
- XML::Parser
used by DAS to parse DAS sources
Note: module is a wrapper around the expat library, which should be installed first:
Download the expat source from http://sourceforge.net/projects/expat/. Get the latest version (currently expat-1.95.8.tar.gz). Run the following commands:
gunzip < expat-1.95.8.tar.gz | tar xvf - cd expat-1.95.8 ./configure make make install
http://www.cpan.org/modules/by-module/XML/XML-Parser-2.34.tar.gz
- XML::RegExp
Used by BioMart
http://www.cpan.org/modules/by-module/XML/XML-RegExp-0.03.tar.gz
- XML::RSS
RSS parser, used to embed Ensembl blog entries on home page
http://www.cpan.org/modules/by-module/XML/XML-RSS-1.33.tar.gz
- XML::Simple
used by Mart to parse configuration
http://www.cpan.org/modules/by-module/XML/XML-Simple-2.18.tar.gz
Back to: ← Installing the code components