Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#7815 closed defect (fixed)

Flint fails to build 64-bit on Open Solaris

Reported by: David Kirkby Owned by: David Kirkby
Priority: major Milestone: sage-4.3.1
Component: porting: Solaris Keywords:
Cc: jst, Robert Miller Merged in: sage-4.3.1.rc0
Authors: David Kirkby Reviewers: Robert Miller
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description

There are several problems in the Flint spkg-install and makefile which prevent it building 64-bit on any platform other than OS X. Apart from the usual changes of adding -m64 to CFLAGS, the makefile has previously been changed to make it work on OS X. However, it does not work on Open Solaris in 64-bit mode, as the -m64 flag is not being added where it should be.

Change History (8)

comment:1 Changed 13 years ago by David Kirkby

Authors: David Kirkby
Status: newneeds_review
Summary: Flint fails to build 64-bit on Open Solaris[with spkg; needs review] Flint fails to build 64-bit on Open Solaris

Here's an updated spkg which corrects the faults. It essentially does that by adding the environment variable CXXFLAG64 to the Makefile. This will add -m64 whenever SAGE64 is set to yes. If you look at the makefile you will see -m64 has been hard-coded when building the library on OS X, but not for other platforms.

The changes have been checked in with 'hg'

Revised .spkg and diff can be found at

http://boxen.math.washington.edu/home/kirkby/portability/flint-1.5.0.p3/

Dave

comment:2 Changed 13 years ago by David Kirkby

Status: needs_reviewneeds_work

comment:3 Changed 13 years ago by David Kirkby

Cc: jst added
Status: needs_workneeds_review

Make sure CFLAG64 and CXXFLAG64 are both exported to -m64 when testing this. It relies on that, which will happen automatically very soon I hope, when my updates to sage-env get incorporated.

comment:4 Changed 13 years ago by David Kirkby

Cc: Robert Miller added

This depends on #7818 so should not be applied until that is applied.

comment:5 Changed 13 years ago by Robert Miller

Reviewers: Robert Miller
Status: needs_reviewpositive_review

Everything works on boxen, and I trust dkirkby on the Open Solaris end.

comment:6 Changed 13 years ago by Robert Miller

Merged in: sage-4.3.1.rc0
Resolution: fixed
Status: positive_reviewclosed

comment:7 Changed 13 years ago by David Kirkby

Not only does it work on Open Solaris on x86 hardware, but I just tried for the first time to build a 64-bit version of Sage on a Sun Blade 2000 with a pair of UltraSPARC III+ CPUs running Solaris 10. This was based on the 4.3.1.alpha2 source code, but with this patch added. There are warnings issued during the 64-bit SPARC build that there are no 64-bit assembly routines, so C is used. But apart from that, Flint is now at least building on:

  • 32-bit Solaris 10 SPARC
  • 64-bit Solaris 10 SPARC
  • 64-bit Open Solaris x86

comment:8 Changed 13 years ago by Minh Van Nguyen

Summary: [with spkg; needs review] Flint fails to build 64-bit on Open SolarisFlint fails to build 64-bit on Open Solaris
Note: See TracTickets for help on using tickets.