Perl Math::Pari

Packaging for OpenSuse

Perl Interface to PARI

1 Situation

  • We have packaged the Math::Pari module as compressed tar, source rpm and object rpm package, based on perl-Math-Pari.spec, for the a2e opensuse public repository.
  • The install routine of the original package is invasive: it wants to download the pari package from a non-existing web address, and it does not find/accept a pre-compiled and functioning pari package on the build system. Moreover, it seems to be tinkering with the pari package itself.
  • As the perl Makefile.PL call accepts a ‘paridir=PATH_TO_DIST_DIR’ parameter (see Math-Pari-2.010800/INSTALL), we placed the pari package into a subdirectory of the perl-Math-Pari package and found that it worked out well on suse 10.3 but not on suse 11.0
  • On Cpan a separate Math::PariBuild package is advertised, which also contains the disturbing download functions. It seems that this package is actually present in the Math::Pari package as utils/Math/PariBuild.pm, but that is not clearly said.
  • Incompatibility with Perl 5.10 has been reported and a patch by nick wetters supposedly solves these problems. However the current version seems to have already incorporated this patch (related explanations of the maintainer are not very elaborate), and yet the package does not compile. The maintainer himself seems skeptical about whether it works when he writes in Math-Pari-2.010800/Changes: ‘Attempt to support v5.10 (based on code contributed by ???)’’
  • A recent report about compilation failure was answered by the maintainer with the remark that whoever compiles this library must compile Perl from scratch because “all major Unixish distributions of Perl are broken”. Hopefully this refers only to some proprietary Unix systems and not to Linux distributions.
  • We found that Makefile.PL needs to be invoked with certain commandline options:
    • machine=ix86 – the i386 architecture which the INSTALL file talks about is not known to pari
    • Configure – as written in the INSTALL file:

      The older versions of Math::Pari were using GP/PARI configuration scripts to generate the header file libPARI/paricfg.h needed for the compile of the library. The newer version generate this file themselves. If this new way fails, put the word Configure on the Makefile.PL command line to generate this file “the old way”:

    • This is however still not enough. The Configure script fails to determine the DF_DFLT_NAME value. We got across this problem by hacking this value into the paricfg.h template as a line #define DL_DFLT_NAME NULL.
  • Given the fragile of the source package and the hackish nature of our solution, we have not found the time to present this solution in the form of separate source packages and patches. Rather, we just provide one slightly modified source package alongside with the spec template. We keep the unmodified source package separate, so that a cleaner presentation can be worked out later.
  • Our packages for opensuse 10.3 and 11.0 have been put to the test of use in the A2E multilingual hypertext system. The former works perfectly. When using the the latter we still get our work done, but, as the the following warning message tells us, probably not through Math::Pari:
    Math::BigInt: couldn't load specified math lib(s), fallback to Math::BigInt::FastCalc at /usr/lib/perl5/vendor_perl/5.10.0/Crypt/DSA/Key.pm line 6
    Math::BigInt: couldn't load specified math lib(s), fallback to Math::BigInt::FastCalc at /usr/lib/perl5/vendor_perl/5.10.0/Crypt/DSA/Util.pm line 6
    

2 Tasks

  • Source 2 (pari.tgz) should be separated from source 1, e.g. added into it during build by means of an invocation of the rpm macro %setup

3 Timeline

4 Resources

5 Chronology

  • dat: 2008-05-22; prs: phm: apache created this directory
[ ADP | Packages | perl | perl-HTML-Summary | perl-WWW-Robot | perl-WWW-Sitemap | perl-Search-Sitemap | perl-Unicode-EastAsianWidth | perl-Term-ReadLine-Gnu | perl-BSD-Resource | perl-Net-Ping | perl-IO | perl-Data-Dumper | perl-Template-Multilingual | perl-Unix-ConfigFile | perl-DateTime-Format-W3CDTF | perl-DateTime-TimeZone | perl-List-MoreUtils | perl-DateTime-Locale | perl-DateTime | perl-Error | perl-Class-Inner | perl-Devel-Symdump | perl-Email-Filter | perl-Class-ErrorHandler | perl-Convert-ASN1 | perl-Convert-PEM | perl-Crypt-DES | perl-Crypt-DES_EDE3 | perl-Crypt-CAST5_PP | perl-Crypt-CAST5 | perl-Convert-ASCII-Armour | perl-Crypt-RIPEMD160 | perl-Tie-EncryptedHash | perl-Crypt-Random | perl-Crypt-Primes | perl-Class-Loader | perl-Crypt-Rijndael | perl-Crypt-CBC | perl-Crypt-Twofish | perl-Crypt-Blowfish | perl-Module-Install | perl-Crypt-IDEA | perl-Crypt-DSA | perl-Crypt-RSA | perl-Data-Buffer | perl-ExtUtils-AutoInstall | perl-Math-Pari| perl-MIME-Types| perl-Return-Value| perl-Test-Class| perl-Test-Unit| perl-DateTime-Format-Mail| perl-Cache-Cache| perl-HTML-Parser| perl-Html-Mason| perl-Test-Simple| perl-Devel-StackTrace| perl-Scalar-Util| perl-Class-Data-Inheritable| perl-Class-Container| perl-Exception-Class| perl-Params-Validate| perl-XML-RSS| perl-OLE-Storage_Lite| perl-OLE-Storage| perl-Spreadsheet-ParseExcel| perl-IO-Stty| perl-Crypt-OpenPGP| perl-IO-Tty| perl-Psh| perl-Template-DBI| Sendmail| perl-Mail-Box| Sendmail| perl-Email-Simple| perl-Email-Abstract| AppConfig| Expect ]
Valid XHTML 1.0! Valid CSS! deplate
http://a2e.de/adv/pak/Math-Pari
© 2008-05-22 Hartmut PILCH