Karim BELABAS on Thu, 25 Oct 2001 13:54:25 +0200 (MEST)

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: math::pari + pari-2.1.2

On Tue, 23 Oct 2001, Ilya Zakharevich wrote:
> I released v2.010200 which auto-patches for this particular buglet.

I tried again to compile Math::PARI on Solaris, using latest versions and
without patching anything this time.

(12:34) geo-karim% uname -a
SunOS geo 5.8 Generic_108528-10 sun4u sparc SUNW,Ultra-5_10


1) Rather unimportant point: you find PARI's build dir by looking at
pari-[234].*.  I added another loop if this one failed, to check for 'pari'
(the PARI root dir may have been created by CVS)  [then I had to separate
version number and directory name, etc.]

Anyway, once I had it working, I restarted with a clean Math::PARI and made a
symbolic link instead.


2) I had many configuration problems, all boiling down to Math::PARI's using
perl's Config.pm when our perl installation was installed from a binary
package [frequent situation on Solaris], pre-compiled on a rather different

(18:24) geo-karim% perl Makefile.PL
Found GP/PARI build directory in ../../pari-2.1.2
     (formatted ../../pari-002002002).
glob failed (child exited with status 1) at Makefile.PL line 97.
...Processor of family `sunos' detected
...I will  use assembler build of type 'sunos'.
####    Do not know how to build for assembler `sunos'. ####

Another try:

(18:25) geo-karim% perl Makefile.PL machine=sparcv8_micro
Found GP/PARI build directory in ../../pari-2.2.2
     (formatted ../../pari-002002002).
glob failed (child exited with status 1) at Makefile.PL line 97.
...Via command-line: processor family `sparcv8_micro'
...I will  use assembler build of type 'sparcv8_micro'.
glob failed (child exited with status 1) at (eval 19) line 308.

(18:26) geo-karim% make
cc -c -I../../../pari-2.2.2/src/headers -I../../../pari-2.2.2/src/graph -I.
-xO3 -xdepend    -DVERSION=\"0.10\" -DXS_VERSION=\"0.10\" -K PIC
-Derr=pari_err -DSOLARIS -DDYNAMIC_PLOTTING -o mpqs.o
/usr/ucb/cc:  language optional software package not installed



3) I compiled & installed perl-5.6.1 myself. Now 2) is completely solved, and
'make' runs to completion and so does 'make install'. I get this
unimportant warning:

In file included from ../../../pari-2.2.2/src/headers/pari.h:70,
                 from ../../../pari-2.2.2/src/modules/thue.c:22:
../../../pari-2.2.2/src/headers/parigen.h:22: warning: redefinition of `ulong'
/home/belabas/tmp/gcc-3.0.1/lib/gcc-lib/sparc-sun-solaris2.8/3.0.1/include/sys/types.h:506: warning: `ulong' previously declared here

(apparently ULONG_NOT_DEFINED is not set properly).

I also get this other one:

Pari.xs:224: warning: static declaration for `changevalue' follows non-static


4) make test fails miserably:

Can't load 'blib/arch/auto/Math/Pari/Pari.so' for module Math::Pari: ld.so.1:
/home/belabas/pub/bin/perl: fatal: relocation error: file
blib/arch/auto/Math/Pari/Pari.so: symbol overflow: referenced symbol not
found at /home/belabas/pub/lib/perl5/5.6.1/sun4-solaris/DynaLoader.pm line

(for all tests of course). The link line was

LD_RUN_PATH="/usr/lib" /home/belabas/tmp/gcc-3.0.1/bin/gcc  -G -L/home/belabas/pub/lib -L/usr/local/lib Pari.o  -o blib/arch/auto/Math/Pari/Pari.so libPARI/libPARI.a  -lm

A typical compilation line would be

/home/belabas/tmp/gcc-3.0.1/bin/gcc -c -I../../../pari-2.2.2/src/headers -I../../../pari-2.2.2/src/graph -I. -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O   -DVERSION=\"0.10\" -DXS_VERSION=\"0.10\" -fPIC -Derr=pari_err -DSOLARIS -DDYNAMIC_PLOTTING -o polarit2.o ../../../pari-2.2.2/src/basemath/polarit2.c

LD_LIBRARY_PATH is unset. Just in case, I recompiled everything using
/usr/bin/gcc = gcc-2.95.2 and original pari-2.1.2: same result.

Karim Belabas                    email: Karim.Belabas@math.u-psud.fr
Dep. de Mathematiques, Bat. 425
Universite Paris-Sud             Tel: (00 33) 1 69 15 57 48
F-91405 Orsay (France)           Fax: (00 33) 1 69 15 60 19
PARI/GP Home Page: http://www.parigp-home.de/