[Bioperl-l] Packaging BioPerl for mandrake linux

Guillaume Rousse rousse at ccr.jussieu.fr
Fri Jan 9 17:47:00 EST 2004

On Friday 09 January 2004 16:49, Aaron J. Mackey wrote:
> On Jan 9, 2004, at 7:35 AM, Guillaume Rousse wrote:
> > First, the compilation doesn't support parallel build on multiple-cpu
> > build
> > host, as readm.pm get installed after it is needed:
> I'm not sure how to fix this ...
Me neither :-)

> > Second, correct optimisation flags (-O2 -fomit-frame-pointer -pipe
> > -march=i586
> > -mcpu=pentiumpro) are not passed to all gcc invocations:
> But this I did fix in CVS, thanks for pointing it out ...
> > Third, I can't find any installed binary files at the end of the
> > compilation
> > process, only source C files and headers
> When you run "make install" what do you see?  I get (on Mac OS X 10.3):
> Installing
> /usr/local/lib/perl5/site_perl/5.8.1/darwin-2level/auto/Bio/Ext/Align/
> Align.bs
> Installing
> /usr/local/lib/perl5/site_perl/5.8.1/darwin-2level/auto/Bio/Ext/Align/
> Align.bundle
Installing /home/guillomovitch/rpm/tmp/perl-Bioperl-Ext-root/usr/lib/perl5/vendor_perl/5.8.2/Bio/Ext/Makefile.PL
Installing /home/guillomovitch/rpm/tmp/perl-Bioperl-Ext-root/usr/lib/perl5/vendor_perl/5.8.2/Bio/Ext/Align/test.pl
Installing /home/guillomovitch/rpm/tmp/perl-Bioperl-Ext-root/usr/lib/perl5/vendor_perl/5.8.2/Bio/Ext/Align/Align.pm
Seems the source dir is installed instead of build dir.
I used
perl Makefile.PL INSTALLDIRS=vendor
for generating the makefile, and a rpm macro evaluating to
make DESTDIR=/home/guillomovitch/rpm/tmp/perl-Bioperl-Ext-root install
for installation

> That .bundle file is the dynamically loaded binary.
I thought native files had to get installed only 
under /usr/local/lib/perl5/site_perl/5.8.1/i386-linux-thread-multi?

> > I don't have previous experience of using Inline::C, however
> The Bio/Ext/Align/ stuff doesn't use Inline::C, that's only the
> Bio::SeqIO::staden stuff.  You might consider packaging the two
> separately ...
Just because one use Inline::C and not the other? I would like to split 
bioperl core first, there are tons of dependencies there :-)

> > Fourth, invocating make test as part of the build process fails for
> > some
> > uninstalled module:
> This is an Inline::C problem; Inline::C-based modules are a little
> tricky to get right for testing before installation.  Generally I see
> this error when I've had a failed compilation (because of the .h errors
> you found) and don't have a completely "clean" build environment.
> You're right that the error message is misleading.
> > BTW, some modules in main bioperl package have references to some
> > modules in
> > bioperl-run package:
> >
> > Bio::Root::Version
> This is in bioperl-live, or at least it should be ... there is no
> Bio::Root::* in bioperl-run.
My fault, something wrong in a quick diff between bioperl requires and 

> > This make both packages to requires each other. Maybe those modules
> > should be
> > moved to bioperl-run, to make bioperl self-sufficient ?
> bioperl-run requires bioperl, period.  bioperl makes use of many
> "external" packages, but they are mostly optional (required only for a
> very small subset of bioperl functionality).  In general, we'd like
> people to be able to install the core BioPerl without a ton of other
> packages (and certainly without requiring bioperl-run).  All bioperl
> tests should pass (i.e. be skipped, if necessary) without bioperl-run
> installed (is that not true?)

Those dependencies are generated by rpm automatic dependencies computing, 
because they are some files in bioperl triggering them. A quick grep shows 
the included scripts are responsable:
blast2tree.pl:use Bio::Tools::Run::Phylo::Molphy::ProtML
clustalw.pl:use Bio::Tools::Run::Alignment::Clustalw;
I'll silent them manually.

> > Does a fish get cramps after eating?
> > 		-- Why Why Why n°2
> I think so, but only when eating raw humans

A bad dinner with your wife is worth more than a good one in the company of 
your mother-in-law. 
		-- A law for married men

More information about the Bioperl-l mailing list