2
votes

I'm trying to install program called OrthoMCL on MacOS X 10.6.8 Snow Leopard. For it's work it needs DBI module for Perl. On my machine I have two perl installations - prebuild 5.10.0 version on /usr/bin/perl (call it Perl1) and 5.12.3 MacPorts installation (call it Perl2) which I actually use.

Problem is that OrthoMCL is trying to work with /usr/bin/perl. If I try to install CPAN DBI and DBD::mysql modules from CPAN for Perl1 I have errors like:

lipo: can't open input file: /var/tmp//ccOBwzHU.out (No such file or directory)
make: *** [Perl.o] Error 2

External compilation with

/usr/bin/perl Makefile.PL
make

results the same error.

I can install DBI and DBD::mysql on Perl2, but OrthoMCL doesn't work with it.

Addition Perl2 modules pathways to PERL5LIB variable does error with attempt to work with Perl1:

Perl lib version (5.12.4) doesn't match executable version (v5.10.0) at /opt/local/lib/perl5/5.12.4/darwin-thread-multi-2level/Config.pm line 50.

So I have two questions:

  1. Is there an idea how can I install DBI and DBD::mysql modules for Perl1.
  2. Does anybody know how can I force OrthoMCL to work with Perl2?

Thanks!

2

2 Answers

0
votes

Try sudo /usr/bin/perl Makefile.PL && make.

Regarding perl version, you need to install the modules for your second perl version too for it to work. I don't know of OrthoMCL at all, but I'd consult it's documentation regarding how it works together with perl.

0
votes

On Mac OS X, I would strongly recommend never using the system perl at all, and instead using App::Perlbrew to install and use a perl in your home directory.

For more than a few years, OS X's perl has been broken in various ways that are nearly impossible to fix unless you are a guru. It's a rathole you don't want to go down.

Perl applications should not be hardcoding /usr/bin/perl on their first ("shebang") line: that is a bug. Replace it with /usr/bin/env perl, which will run whichever perl you've selected with perlbrew.