Fetching contributors…
Cannot retrieve contributors at this time
121 lines (87 sloc) 4.77 KB
o Version
This is Bioperl-ext version 1.5.1 from CVS HEAD
o Summary
This is the directory for the Bioperl C compiled Extensions.
These currently include:
Bio::Ext::Align (Ewan Birney <>
and Yee Man Chan <>)
Bio::SeqIO::staden::read (Aaron Mackey <>)
o Installing
Depending on your choise of extensions, you might need
Inline::MakeMaker and Inline::C to create the makefile. Use for
example the cpan program to install Inline::MakeMaker and answer yes
when prompted to install Inline::C.
To install all of the extension packages, you can use the top-level
Makefile.PL (present in the same directory you're reading this README
from) (Make sure you read the various notes below about each package
before doing this!):
perl Makefile.PL
make test
make install (may need root permissions)
To install only the individual extensions you wish to have, change
directories into each and use the Makefile.PL found there; for
cd Bio/Ext/Align
perl Makefile.PL
make test (should print out alignment on STDERR)
make install (probably need root permissions).
o Notes for Bio::Ext::Align
Although these extensions can be called by themselves, they really
need the main bioperl distribution to drive them. The modules which do
this are
Bio::Tools::pSW - makes Smith-Waterman alignments for DNA
Bio::Tools::dpAlign - makes Smith-Waterman alignments for proteins
Bio::SearchDist - deals with EVD fitting of extreme value
For more information on how to use these modules, read their own
documentation (perldoc Bio::Tools::pSW ...)
o Notes for Bio::SeqIO::staden::read
This extension needs the rest of the main bioperl distribution to
function properly. It is only useful as a helper module for the SeqIO
system to read sequence trace files handled by the Staden package's
io_lib "read" library. You should have this library installed prior
to installing Bio::SeqIO::staden::read, it's currently available at:
Currently, the Bio::SeqIO::staden::read extension only works with io_lib
v. 1.8.11 or 1.8.12; v. 1.9 and higher have several prototype changes in the
"read" library which have broken compatibility in those versions for now.
It is possible these changes may be addressed in the future.
Many users have noted that the io_lib install process often forgets
to install the "os.h" file along with the rest of the include files;
you may have to do this manually. If so, you may also have to
install the "config.h" file for "os.h" to find all the information it
needs. Finally, you may also need to edit "os.h" to #include
<config.h> instead of #include "config.h" if you continue to get
undefined symbol errors during compilation. On some OSes you may in fact
have to do the OPPOSITE, meaning change <config.h> to "config.h".
The bioperl-ext make process will prompt you for the LIB and INCLUDE
locations (usually /usr/local/lib and usr/local/include/io_lib,
respectively) of the io_lib "libread" library and Read.h header files,
after trying to automatically find them. You may also specify these
via the environment variables "IOLIB_LIB" and "IOLIB_INC", or via
identically named options to perl Makefile.PL:
perl Makefile.PL IOLIB_LIB=/opt/lib IOLIB_INC=/opt/include/io_lib
Ignore any warnings about these options being unknown to MakeMaker.
A failed compilation is most likely due to an incomplete io_lib
installation; make sure that all the required io_lib ".h" files are in
place (see above regarding "os.h" and "config.h").
Additional problems may occur that have been associated with the VERSION
number that Inline::C uses. Normally, this pops up as an Inline error:
The extension 'Bio::SeqIO::staden::read' is not properly installed in path:
If this is a CPAN/distributed module, you may need to reinstall it on your
To allow Inline to compile the module in a temporary cache, simply remove the
Inline config option 'VERSION=' from the Bio::SeqIO::staden::read module.
To get around this, either quote out or remove the indicated line from your
local Bio/SeqIO/staden/ file after installation:
use Inline (C => 'DATA',
VERSION => '1.51', # <--- this line
NAME => 'Bio::SeqIO::staden::read',
LIBS => "-L/usr/local/lib -lread -lz", # leave these as double quotes - necessary for Makefile.PL function
INC => "-I/usr/local/include/io_lib", # leave these as double quotes - necessary for Makefile.PL function