#9030: rubiks is building part 32-bit and part 64-bit on OpenSolaris x64.
----------------------------+-----------------------------------------------
   Reporter:  drkirkby      |       Owner:  drkirkby  
       Type:  defect        |      Status:  new       
   Priority:  major         |   Milestone:  sage-4.4.3
  Component:  solaris       |    Keywords:            
     Author:  David Kirkby  |    Upstream:  N/A       
   Reviewer:                |      Merged:            
Work_issues:                |  
----------------------------+-----------------------------------------------
Changes (by newvalueoldvalue):

  * author:  => David Kirkby


Comment:

 Replying to [comment:3 robertwb]:
 > As this is never linked in directly, there is no need (or advantage, as
 far as I can tell) to build this 64-bit for a fully functional Sage.

 I agree there is no technical advantage in using rubiks 64-bit.

 However, it seems rather unprofessional to have 4 out of the 6 binaries
 building 64-bit, and two of them building 32-bit. Having all rubiks
 binaries made 64-bit allows one to quickly find any binaries from any
 packages that are not being built properly, using a command like

 {{{
 $ find local -exec file {} \; | grep 32-bit
 }}}

 as such, I believe it's desirable that a 64-bit build on !OpenSolaris,
 Solaris or any other operating system for that matter creates only 64-bit
 objects.

 A revised package, which add the -m64 flag to the makefile is at

 http://boxen.math.washington.edu/home/kirkby/patches/rubiks-20070912.p11.spkg

 There were a lot of files not in the repository (I believe this was my
 fault months ago), which I've checked in. As such, the patch is a lot
 longer than it needs to be to fix this particular problem.

 The following line:

 {{{
 CFLAGS = -O -DLARGE_MEM -DVERBOSE
 }}}
 gets be changed to:
 {{{
 CFLAGS = ${CFLAG64} -O -DLARGE_MEM -DVERBOSE
 }}}

 using 'sed'.

 $CFLAG64 is then set to -m64 if building 64-bit, so the -m64 gets added to
 the makefile.


 After building '''all''' the rubiks binaries are 64-bit. i.e.

 {{{
 drkir...@hawk:~/sage-4.4.2$ file local/bin/size222
 local/bin/size222:      ELF 64-bit LSB executable AMD64 Version 1,
 dynamically linked, not stripped, no debugging information available
 drkir...@hawk:~/sage-4.4.2$ file local/bin/dikcube
 local/bin/dikcube:      ELF 64-bit LSB executable AMD64 Version 1,
 dynamically linked, not stripped, no debugging information available
 }}}

 Previously both were being built 32-bit (see the output of the find
 command shown above, where clearly there was a mix of 32-bit and 64-bit
 objects).

 This has been compiled on sage.math and bsd.math as well as my own Sun
 Ultra 27 running !OpenSolaris.

 Dave

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9030#comment:5>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to