Catboy has asked for the wisdom of the Perl Monks concerning the following question:

I noticed in my search for information that the particular module "Math::Pari" was discussed a LOT over the many years past. Unfortunately, the problem I'm having doesn't seem to have been brought up. This could be because:

1) I'm an ID10T <- very possible ... or
2) I really do have a problem.

You see - thanks to "security" concerns - I've been forced to do away with Net::Telnet and in its place I'm to institute Net::SSH::Perl. That's all fine and good, but this particular module requires so many other fine Perl modules and I'm having quite a blast installing them all - particularly, Math::Pari...

I'm using 5.10 on an Ubuntu 8.10 load (2.6.27-7). I've followed the basic/advanced instructions in the README and INSTALL, plus followed along with advice in other threads regarding this same Module, all to no avail. Enjoy the following:
root@devpc:/home/username/Downloads/pari-2.3.4/Math-Pari-2.010800# per +l Makefile.PL Filtered out versions too new... Setting up Math::Pari with Perl 5.010000 on linux version 2.6.24-15-se +rver; cc=cc, gccversion=4.3.1, ccflags='-D_REENTRANT -D_GNU_SOURCE -DDEBI +AN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURC +E -D_FILE_OFFSET_BITS=64', ld=cc, ldflags=' -L/usr/local/lib', optimize='-O2 -g'. Found GP/PARI build directory in ../../pari-2.3.4 (integer-formatted version 2003004). ### Math::Pari support of GP/PARI library version 2.3.* should be ### considered cursory only. One may need to downgrade to 2.1.7, ### or run Makefile.PL with option machine=none if the tests fail. ### The test t/55_intnum.t takes a very long time to complete. ### The following subtests are known to fail: ### t/55_intnum.t 51 2 3.92% 12 50 ### t/55_ploth.t 34 1 2.94% 4 ### t/55_program.t 37 1 2.70% 2 ...Generating libPARI/paricfg.h ... Scanning header files... ...ulong ...getrusage ...CLK_TCK not defined Creating libPARI/paricfg.h... ...Processor of family `ix86' detected Checking if your kit is complete... Looks good ...Processor of family `ix86' detected ...I will use assembler build of type 'ix86'. ...Assembler is GNU assembler Writing Makefile for Math::PARI::libPARI Writing Makefile for Math::Pari root@devpc:/home/username/Downloads/pari-2.3.4/Math-Pari-2.010800# mak +e cp libPARI.dumb.pod blib/lib/Math/libPARI.dumb.pod cp PariInit.pm blib/lib/Math/PariInit.pm cp Pari.pm blib/lib/Math/Pari.pm cp libPARI.pod blib/lib/Math/libPARI.pod cd libPARI && make LIBPERL_A="libperl.a" LINKTYPE="dynamic" OPTIMIZE=" +-O2 -g" PREFIX="/usr" PASTHRU_DEFINE="" PASTHRU_INC="" make[1]: Entering directory `/home/username/Downloads/pari-2.3.4/Math- +Pari-2.010800/libPARI' /usr/bin/perl -wle "print q(#ifndef ASMINLINE)" > pariinl.h /usr/bin/perl -pe1 ../../../pari-2.3.4/src/kernel/none/addll.h ../../. +./pari-2.3.4/src/kernel/none/mulll.h ../../../pari-2.3.4/src/kernel/n +one/bfffo.h ../../../pari-2.3.4/src/kernel/none/divll.h >> p +ariinl.h /usr/bin/perl -wle "print q(#endif)" >> pariinl.h /usr/bin/perl -pe1 ../../../pari-2.3.4/src/kernel/ix86/asm0.h ../../.. +/pari-2.3.4/src/kernel/none/tune.h ../../../pari-2.3.4/src/kernel/non +e/int.h ../../../pari-2.3.4/src/kernel/none/level1.h >> +pariinl.h cc -c -I ../../../pari-2.3.4/src -I../../../pari-2.3.4/src/headers -I +../../../pari-2.3.4/src/graph -I. -D_REENTRANT -D_GNU_SOURCE -DDEBIAN + -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE +-D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"\" -DXS_VERSION=\"\" -fPI +C -Derr=pari_err -DASMINLINE -DGCC_INLINE -DDYNAMIC_PLOTTING -o es.o +../../../pari-2.3.4/src/language/es.c ../../../pari-2.3.4/src/language/es.c: In function ‘os_read’: ../../../pari-2.3.4/src/language/es.c:2835: warning: ignoring return v +alue of ‘read’, declared with attribute warn_unused_result cc -c -I ../../../pari-2.3.4/src -I../../../pari-2.3.4/src/headers -I +../../../pari-2.3.4/src/graph -I. -D_REENTRANT -D_GNU_SOURCE -DDEBIAN + -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE +-D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"\" -DXS_VERSION=\"\" -fPI +C -Derr=pari_err -DASMINLINE -DGCC_INLINE -DDYNAMIC_PLOTTING -o base5 +.o ../../../pari-2.3.4/src/basemath/base5.c cc -c -I ../../../pari-2.3.4/src -I../../../pari-2.3.4/src/headers -I +../../../pari-2.3.4/src/graph -I. -D_REENTRANT -D_GNU_SOURCE -DDEBIAN + -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE +-D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"\" -DXS_VERSION=\"\" -fPI +C -Derr=pari_err -DASMINLINE -DGCC_INLINE -DDYNAMIC_PLOTTING -o Flx.o + ../../../pari-2.3.4/src/basemath/Flx.c cc -c -I ../../../pari-2.3.4/src -I../../../pari-2.3.4/src/headers -I +../../../pari-2.3.4/src/graph -I. -D_REENTRANT -D_GNU_SOURCE -DDEBIAN + -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE +-D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"\" -DXS_VERSION=\"\" -fPI +C -Derr=pari_err -DASMINLINE -DGCC_INLINE -DDYNAMIC_PLOTTING -o bibli +1.o ../../../pari-2.3.4/src/basemath/bibli1.c cc -c -I ../../../pari-2.3.4/src -I../../../pari-2.3.4/src/headers -I +../../../pari-2.3.4/src/graph -I. -D_REENTRANT -D_GNU_SOURCE -DDEBIAN + -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE +-D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"\" -DXS_VERSION=\"\" -fPI +C -Derr=pari_err -DASMINLINE -DGCC_INLINE -DDYNAMIC_PLOTTING -o buch2 +.o ../../../pari-2.3.4/src/basemath/buch2.c cc -c -I ../../../pari-2.3.4/src -I../../../pari-2.3.4/src/headers -I +../../../pari-2.3.4/src/graph -I. -D_REENTRANT -D_GNU_SOURCE -DDEBIAN + -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE +-D_FILE_OFFSET_BITS=64 -O2 -g -DVERSION=\"\" -DXS_VERSION=\"\" -fPI +C -Derr=pari_err -DASMINLINE -DGCC_INLINE -DDYNAMIC_PLOTTING -o init. +o ../../../pari-2.3.4/src/language/init.c ../../../pari-2.3.4/src/language/init.c: In function ‘pari_version’: ../../../pari-2.3.4/src/language/init.c:1983: error: ‘PARI_VERSION_SHI +FT’ undeclared (first use in this function) ../../../pari-2.3.4/src/language/init.c:1983: error: (Each undeclared +identifier is reported only once ../../../pari-2.3.4/src/language/init.c:1983: error: for each function + it appears in.) ../../../pari-2.3.4/src/language/init.c:1984: error: ‘PARI_VERSION_COD +E’ undeclared (first use in this function) make[1]: *** [init.o] Error 1 make[1]: Leaving directory `/home/username/Downloads/pari-2.3.4/Math-P +ari-2.010800/libPARI' make: *** [libPARI/libPARI.a] Error 2 root@devpc:/home/username/Downloads/pari-2.3.4/Math-Pari-2.010800


As you can see, I'm not getting past the 'make test'. Any help you can offer or light you may shed in my direction is greatly appreciated.

TIA

Catboy

Replies are listed 'Best First'.
Re: Kicking a Dead Horse - Math::Pari Install Problem
by almut (Canon) on Nov 11, 2008 at 00:03 UTC

    Not a direct answer... but do you really need to use Net::SSH::Perl? Have you already considered using Net::SSH2 instead?  The latter module is based on the actively maintained library libssh2, while Net::SSH::Perl has already gathered some dust, has a number of unresolved bugs, and is generally dreadfully slow.  In other words, if Net::SSH2 is an option, your problem with Math::Pari might already be "solved" indirectly...

      Thank you for your response.

      My intentions were to try this particular module, as I have numerous devices which I have to SSH into. Some of which do not support SSH2, while of course others do. Hence, my quandary. I perhaps may be able to author two different scripts using ::SSH2 and ::SSH, if I cannot resolve this any other way.
Re: Kicking a Dead Horse - Math::Pari Install Problem
by lima1 (Curate) on Nov 10, 2008 at 23:55 UTC
    ### Math::Pari support of GP/PARI library version 2.3.* should be ### considered cursory only. One may need to downgrade to 2.1.7, ### or run Makefile.PL with option machine=none if the tests fail.
    did you try that?
      Thank you for your response.

      I had tried that, many times - to include specifying my machine type. Each time, I received the same error, regardless of what options I'd specified...
Re: Kicking a Dead Horse - Math::Pari Install Problem
by ig (Vicar) on Nov 11, 2008 at 03:42 UTC
      Thank you for your response. libnet-ssh-perl was already installed prior to my attempts and therefore was not a player in resolving my problem.
Re: Kicking a Dead Horse - Math::Pari Install Problem
by Catboy (Novice) on Nov 13, 2008 at 17:15 UTC
    I've abandoned all hope of using this particular module. After further review, I've decided to stick with Net::SSH::Expect as a sort of bandage for what I wish to seek to accomplish.

    Thanks again to those who've responded.

    next if (@info =~ /obscure/);
Re: Kicking a Dead Horse - Math::Pari Install Problem
by Khen1950fx (Canon) on Nov 14, 2008 at 03:20 UTC
    You will not get past 'make test'; however, I've been using this module for quite some time and have never had problems with it. To properly install it:

    perl Makefile.PL machine=none
    make install

    Try it again.

      Get the tar.gz from the website. Hack the Makefile.pl in the cpan build directory (/root/.cpan/build/Math-Pari-2.01080604 in my case) & hack the $parisrc variable to point to it. perl Makefile.pl make make install
Re: Kicking a Dead Horse - Math::Pari Install Problem
by poolpi (Hermit) on Nov 11, 2008 at 19:15 UTC
      PARI was install by hand during my attempts at loading ::Pari. Chalk this one up to my impatience, but I can't seem to find a "Bundle::SSH" on CPAN.