User talk:Darek Kedra/sandbox 21: Difference between revisions
Darek Kedra (talk | contribs) (apache modules) |
Darek Kedra (talk | contribs) |
||
Line 117: | Line 117: | ||
make | make | ||
make test | make test | ||
#t/modules/apache_status.t ............... 1/15 # Failed test 14 in t/modules/apache_status.t at line 47 | |||
# Failed test 15 in t/modules/apache_status.t at line 47 fail #2 | |||
#t/modules/apache_status.t ............... Failed 2/15 subtests | |||
make install | make install | ||
</pre> | </pre> | ||
==Perl modules required by ENSEMBL== | ==Perl modules required by ENSEMBL== |
Revision as of 08:31, 8 May 2010
ENSEMBL Install
At this moment (2010-05-08) this is not a validated procedure guaranteed to give you a fully functional local ENSEMBL mirror / instance. These are observations observations made during an ongoing attempt to get such working installation.
Hardware
- 4 cores Intel(R) Xeon(R) CPU E5405 @ 2.00GHz
- 16GB RAM
This is not a prerequisite, but compilation times on slower machine will take longer time.
Software
- Fedora 8 64-bit Linux
- gcc 4.1.2
Requirements
- without any databases sources directories < 1 Gb,
- destination directory (apache2, mysql, perl, perl modules, ensembl + bioperl code, etc. ca 600Mb
General remarks
This is an attempt to get a working local ENSEMBL in a step-by-step fashion. Most likely one can get away with a bit smaller number of perl modules, no brand new copy of Perl, using distribution-specific apache2, etc. On the other hand for an ENSEMBL newbie, the safest path is to stay at the beginning as close to the provided configuration as possible. Instead of performing 100 steps, from software components installation, MySQL database creation, data loading and with final editing of ENSEMBL configuration files it may be safer to treat each of the steps separately and use error messages as checkpoints.
Web server installation
ENSEMBL relies on mod_perl.
Perl
http://www.perl.org/get.html got perl-5.12.0
cd perl-5.12.0 cd perl-5.12.0/ CFLAGS='-m64 -mtune=nocona' ./Configure -des -A ccflags=-fPIC -Dprefix=/home/ensembl_usr/local/ make make test make install
The "CFLAGS" line is required on 64-bit Linux system to compile mod_perl. See relevant section below
Apache httpd
http://httpd.apache.org/download.cgi got httpd-2.2.15.tar.gz
installation:
./configure --enable--deflate --enable--headers --enable--expires --prefix=/home/ensembl_usr/local/apache2 make make test make install
checking what is build in:
/home/ensembl_usr/local/apache2/bin/apachectl -t -D DUMP_MODULES
my output:
core_module (static) authn_file_module (static) authn_default_module (static) authz_host_module (static) authz_groupfile_module (static) authz_user_module (static) authz_default_module (static) auth_basic_module (static) include_module (static) filter_module (static) log_config_module (static) env_module (static) setenvif_module (static) version_module (static) mpm_prefork_module (static) http_module (static) mime_module (static) status_module (static) autoindex_module (static) asis_module (static) cgi_module (static) negotiation_module (static) dir_module (static) actions_module (static) userdir_module (static) alias_module (static) so_module (static) perl_module (shared)
I do not get here modules: deflate, headers, expires
What works (in httpd-2.2.15 directory):
cd ./modules/filters/ /home/ensembl_usr/local/apache2/bin/apxs -c mod_deflate.c cp -i .libs/mod_deflate.so /home/ensembl_usr/local/apache2/modules/ cd ../metadata/ /home/ensembl_usr/local/apache2/bin/apxs -c mod_headers.c cp -i .libs/mod_headers.so /home/ensembl_usr/local/apache2/modules/ /home/ensembl_usr/local/apache2/bin/apxs -c mod_expires.c cp -i .libs/mod_expires.so /home/ensembl_usr/local/apache2/modules/ cd /home/ensembl_usr/local/ensembl/modules ln -s /home/ensembl_usr/local/apache2/modules/*.so .
mod_per 4 apache2.x
http://perl.apache.org/download/index.html got mod_perl-2.0.4
cd mod_perl-2.0.4 perl Makefile.PL MP_APXS=/home/ensembl_usr/local/apache2/bin/apxs make make test #t/modules/apache_status.t ............... 1/15 # Failed test 14 in t/modules/apache_status.t at line 47 # Failed test 15 in t/modules/apache_status.t at line 47 fail #2 #t/modules/apache_status.t ............... Failed 2/15 subtests make install
Perl modules required by ENSEMBL
Assumes that you installed Perl in /home/ensembl_usr/local/ and got perl binary in /home/ensembl_usr/local/bin/
Check the list of modules here i.e: http://browser.1000genomes.org/info/docs/webcode/install/non-ensembl-code.html
There are several versions of this list of modules, but ultimately you may be missing several not listed modules, and you will get their names (one by one) after trying to start your ENSEMBL site.
Despite the advise of installing always the newest module versions there is one important exception: LWP. LWP version 5.812 is required by latest (2.57) ParallelUserAgent. This will be covered in a separate section of this page.
Also some modules do not install (at least on my machine) from perls CPAN shell. These may require installation by hand from sources (described later).
Easy things first:
export PATH=/home/ensembl_usr/local/bin/:$PATH which perl # ~/local/bin/perl perl -MCPAN -e shell #<snip> #commit: wrote '/home/ensembl_usr/local/lib/perl5/5.12.0/CPAN/Config.pm' install Cache::Memcached # Cache-Memcached-1.28.tar.gz install CGI # CGI.pm-3.49.tar.gz install CGI::Ajax # CGI-Ajax-0.707.tar.gz install CGI::Session # CGI-Session-4.42.tar.gz install Class::Accessor # Class::Accessor is up to date (0.34). // checked after installation of all modules install Class::Data::Inheritable # Class::Data::Inheritable is up to date (0.08). // checked after inst. of all modules install Class::Std # Class-Std-0.011.tar.gz install Class::DBI::Sweet # Class-DBI-Sweet-0.10.tar.gz install Class::Std::Utils # Class-Std-Utils-v0.0.3.tar.gz install Compress::Zlib # Compress::Zlib is up to date (2.027). install Compress::Raw::Zlib # Compress-Raw-Zlib-2.027.tar.gz install SHLOMIF/Config-IniFiles-2.57.tar.gz #// i /Config::Inifiles/ lists 3 modules, this one is the only one which version is close to the one listed on 1000genomes.org web page (see above) install DBI #DBI-1.611.tar.gz install DB_File # DB_File is up to date (1.820). // day 2, after installation of other modules install Devel::StackTrace # Devel-StackTrace-1.22.tar.gz install GD #GD-2.45.tar.gz install Data::UUID #Data-UUID-1.203.tar.gz install Digest::MD5 #Digest::MD5 is up to date (2.39). install Exception::Class # Exception-Class-1.30.tar.gz install install Hash::Merge # Hash-Merge-0.12.tar.gz install Storable #Storable is up to date (2.22). install SOAP::Lite # SOAP-Lite-0.711.tar.gz install XML::Parser # XML::Parser is up to date (2.36). install XML::Simple # XML-Simple-2.18.tar.gz install Parse::RecDescent # Parse-RecDescent-1.965001.tar.gz install PDF::API2 # PDF-API2-0.73.tar.gz install Spreadsheet::WriteExcel # Spreadsheet-WriteExcel-2.37.tar.gz install OLE::Storage_Lite # OLE::Storage_Lite is up to date (0.19) install Time::HiRes # Time-HiRes-1.9721.tar.gz install HTML::Template # HTML-Template-2.9.tar.gz install File::Temp # File::Temp is up to date (0.22) install Mail::Mailer # MailTools-2.06.tar.gz install Math::Bezier # Math-Bezier-0.01.tar.gz install IO::String # IO-String-1.08.tar.gz install Image::Size # Image-Size-3.221.tar.gz install K/KM/KMACLEOD/libxml-perl-0.08.tar.gz # // OK install List::MoreUtils #List-MoreUtils-0.22.tar.gz install Log::Log4perl # Log-Log4perl-1.28.tar.gz install Number::Format # Number-Format-1.73.tar.gz install DCONWAY/Parse-RecDescent-1.965001.tar.gz # // closest with ver. number from 1000genomes.org list install S/SM/SMUELLER/PathTools-3.31.tar.gz # // closest with ver. number from 1000genomes.org list install Template::Plugin::Number::Format # Template-Plugin-Number-Format-1.02.tar.gz install Time::HiRes # Time-HiRes-1.9721.tar.gz install XML::DOM # XML-DOM-1.44.tar.gz install XML::RSS # XML-RSS-1.48.tar.gz install Compress::Bzip2 # Compress-Bzip2-2.09.tar.gz
These modules were missing when starting httpd with ENSEMBL's httpd.conf:
install BSD::Resource # BSD-Resource-1.2904.tar.gz install Sys::Hostname::Long # Sys-Hostname-Long-1.4.tar.gz install JSON # JSON-2.21.tar.gz
Problems:
- Template::Toolkit
Used by BioMart http://www.cpan.org/modules/by-module/Template/Template-Toolkit-2.15.tar.gz
- install DBD::mysql -> problem... on a machine without mysql