PARI/GP Bug report logs -
#1239
./Configure issue with GMP ABI selection on HPux 11iv3(B.11.31) ia64
Reported by: Bill.Glessner@cwu.EDU
Date: Wed, 7 Sep 2011 20:18:02 UTC
Severity: normal
Done: Bill Allombert <Bill.Allombert@math.u-bordeaux1.fr>
Bug is archived. No further changes may be made.
Full log
🔗
View this message in rfc822 format
Hi Bill,
...
>did you mean pointers and longs are 64 bits ?
Yes, for ABI=64 pointers and longs are 64 bits. I mis-entered the
information form the gmplib.org document.
...
I have established an ABI=64 operating environment along with the
default ABI=32 environment. Using the ABI=64 environment and modifying
the static function compound( ) in the file src/language/hash.c to be
called c_ompound( ), the 'make gp' is successful with no further issues.
However, the 'make dobench' return the following:
Making dobench in Ohpux-ia64
gmake[1]: Entering directory `/DreamLand/JunqueYard_gccN/pari-2.5.0/Ohpux-ia64'
* Testing objets for gp-dyn..BUG [0]
* Testing analyz for gp-dyn..BUG [0]
* Testing number for gp-dyn..BUG [0]
* Testing polyser for gp-dyn..BUG [0]
* Testing linear for gp-dyn..BUG [0]
* Testing elliptic for gp-dyn..BUG [0]
* Testing sumiter for gp-dyn..BUG [0]
* Testing graph for gp-dyn..BUG [0]
* Testing program for gp-dyn..BUG [0]
* Testing trans for gp-dyn..BUG [0]
* Testing nfields for gp-dyn..BUG [0]
+++ [BUG] Total bench for gp-dyn is 0
PROBLEMS WERE NOTED. The following files list them in diff format:
Directory: /DreamLand/JunqueYard_gccN/pari-2.5.0/Ohpux-ia64
objets-dyn.dif
analyz-dyn.dif
number-dyn.dif
polyser-dyn.dif
linear-dyn.dif
elliptic-dyn.dif
sumiter-dyn.dif
graph-dyn.dif
program-dyn.dif
trans-dyn.dif
nfields-dyn.dif
gmake[1]: *** [dobench] Error 1
gmake[1]: Leaving directory `/DreamLand/JunqueYard_gccN/pari-2.5.0/Ohpux-ia64'
gmake: *** [dobench] Error 2
Only objets-dyn.dif shows something that looks like a failure
From objets-dyn.dif:
- ? Mod(10873,49649)^-1
- *** at top-level: Mod(10873,49649)^-1
- *** ^---
- *** _^_: impossible inverse modulo: Mod(131, 49649).
None of the others show anything other than commands followed by results
with no error or exception indications. I can send you any or all of the
actual .dif files, if that will help.
Thanks for your assistance,
Bill
>Return-path: <Bill.Allombert@math.u-bordeaux1.fr>
>Date: Tue, 20 Sep 2011 23:58:42 +0200
>From: Bill Allombert <Bill.Allombert@math.u-bordeaux1.fr>
>Subject: Re: Bug#1239: ./Configure issue with GMP ABI selection on HPux
> 11iv3(B.11.31) ia64
>In-reply-to: <01O68G42R69E8WW02C@cluster.cwu.edu>
>To: Bill.Glessner@cwu.edu, 1239@pari.math.u-bordeaux.fr
>
>On Mon, Sep 19, 2011 at 10:37:40AM -0700, Bill.Glessner@cwu.EDU wrote:
>>
>> Package: pari
>> Version: 2.5.0
>>
>> Hello Bill,
>>
>> I have had a chance to do some more research into the environment on the
>> HPux rx4640 Itanium /HPux 11iv3 platofrm in which I am trying to install
>> pari 2.5.0.
>>
>> The gmplib.org documentation site in the section
>> http://gmplib.org/manual/ABI-and-ISA.html#ABI-and-ISA for IA-64 shows
>> two possibilities: IA-64 under HP-UX and other IA-64 systems, basically
>> Linux implementations.
>> The HP-UX specifics show that GMP can have either
>> an ABI=32 environment where pointers, ints and longs are 32 bits and GMP
>> uses a 64 bit long long for a limb or
>
>Hello Bill,
>You hit the problem:
>This ABI is not supported by PARI: PARI require limbs to be long.
>
>> an ABI=64 environment where pointers and longs are 32 bits and GMP uses
>> a long for a limb.
>
>did you mean pointers and longs are 64 bits ?
Yes, for ABI=64 pointers and longs are 64 bits. I mis-entered the
information form the gmplib.org document.
>>
>> The initial GMP statement showing 2 possible HP-UX ABI environments says
>> that peformance is the same in both.
>
>> When I built the gcc 4.5.3 environment at our site, I did not specify a
>> special ABI for GMP, mpfr, mpc, etc when building them so that their ABIs
>> are the default ABI=32.
>> In the PARI GP version 2.5.0 config/ directory there is a program
>> gmp_version.c
>>
>> The code will not return a gmp_version for the HP-UX / GMP ABI=32
>> environment where sizeof(mp_limb_t) would need to match sizeof(long long).
>>
>Yes, PARI requires that sizeof(long)==sizeof(void*), so it will not work
>with ABI=32.
>>
>> separate environment for ABI=64 GMP and its associated libraries so that
>> it functions essentially like the Linux IA-64 environments. Since I
>> currently don't need a separate ABI=64 GMP environment for anything else
>> besides pari, I guess I would prefer that pari change, if possible.
>>
>> The build, /usr/local/bin/gmake gp, of pari 2.5.0 on HP-UX 11iv3 with
>> the change to gmp_version.c does fail with the following:
>>
>> ...
>> gcc -c -O3 -Wall -fno-strict-aliasing -fomit-frame-pointer -I. -I../src/head
>> ers -fPIC -o hash.o ../src/language/hash.c
>> ../src/language/hash.c:171:1: error: conflicting types for 'compound'
>> /usr/include/math.h:379:23: note: previous declaration of 'compound' was here
>> gmake[1]: *** [hash.o] Error 1
>> gmake[1]: Leaving directory `/DreamLand/JunqueYard_gccN/pari-2.5.0/Ohpux-ia64'
>> gmake: *** [gp] Error 2
>
>This is an unrelated issue.
>The file src/language/hash.c include a static function compound which somehow
>clash with a function in /usr/include/math.h with the same name.
>Since compound is static, you can rename it to something else.
>Compound in libm looks like a HPUX addition.
>
>Cheers,
>Bill.
Send a report that this bug log contains spam.
Bill Allombert <allomber@math.u-bordeaux.fr>.
Last modified:
Sat Aug 26 17:16:40 2023;
Machine Name:
pari
PARI/GP Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.