Ticket #7134 (closed defect: duplicate)
ntl 5.4.2.p9 always builds 32-bit libraries on Solaris.
|Reported by:||drkirkby||Owned by:||tbd|
|Report Upstream:||N/A||Reviewers:||David Kirkby|
Description (last modified by drkirkby) (diff)
- A Sun Blade 2000 running Solaris 10 update 7
- Sage 4.1.2.rc0
- gcc 4.4.1
- SAGE64 exported to "yes"
We can see that ntl is building 32-bit libraries, despite the fact SAGE64 was set to "yes"
drkirkby@swan:[~/sage/gcc64-sage-4.1.2.rc0/local/lib] $ file *ntl* libntl-5.4.2.so: ELF 32-bit MSB dynamic lib SPARC32PLUS Version 1, V8+ Required, dynamically linked, not stripped libntl.a: current ar archive, not a dynamic executable or shared object libntl.so: ELF 32-bit MSB dynamic lib SPARC32PLUS Version 1, V8+ Required, dynamically linked, not stripped drkirkby@swan:[~/sage/gcc64-sage-4.1.2.rc0/local/lib] $
Other packages building 32-bit libraries, even when SAGE64 is set to "yes" include, but are probably not limited to:
mpir currently mixes 32 and 64-bit objects, so do not build at all #7132.
I will sort this package out after creating a new sage-env, which exports all the variables properly, including the flag for building 64-bit code, which is not always -m64.
Although there is no support for AIX or HP-UX in Sage yet, we could potentially add it - I personally own machines running AIX and HP-UX.
IBM's compiler on AIX uses -q64, and HP's on HP-UX uses +DD64.
The sensible way to resolve this is to add the correct flag on every platform.