#10508: Update ATLAS to stable version 3.10
-------------------------------------------------------+--------------------
       Reporter:  vbraun                               |         Owner:  tbd    
       
           Type:  enhancement                          |        Status:  
needs_work    
       Priority:  major                                |     Milestone:  
sage-5.4      
      Component:  packages                             |    Resolution:         
       
       Keywords:  ATLAS                                |   Work issues:         
       
Report Upstream:  Reported upstream. No feedback yet.  |     Reviewers:  
Benjamin Jones
        Authors:  Volker Braun                         |     Merged in:         
       
   Dependencies:  #13160                               |      Stopgaps:         
       
-------------------------------------------------------+--------------------

Comment (by GeorgSWeber):

 Replying to [comment:202 kcrisman]:
 > So who was right?
 > {{{
 > Dasher-03:~/Desktop/sage-4.8/local/lib/python/site-packages/cvxopt
 student$ otool -L lapack.so
 > lapack.so:
 >         /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
 version 88.1.12)
 >         /Users/student/Desktop/sage-4.8/local/lib/libgsl.0.dylib
 (compatibility version 17.0.0, current version 17.0.0)
 >         /Users/student/Desktop/sage-4.8/local/lib/libgslcblas.0.dylib
 (compatibility version 1.0.0, current version 1.0.0)
 >         /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current
 version 1.0.0)
 > }}}
 > This is with Sage 4.8, the last working binary I have on this box.  I
 foolishly deleted all newer ones in the meantime.  Sage 5.3 works on it,
 of course - in fact, I just used the app bundle yesterday - but it would
 take some time to start a fresh 5.3 or 5.4.beta0.

 It is not necessary to "start a fresh 5.3 or 5.4.beta0". Instead, one can
 go to some Sage OS X PPC download page,
 http://boxen.math.washington.edu/home/sagemath/sage-
 mirror/osx/powerpc/index.html , download from there e.g. "sage-5.3-OSX-
 32bit-10.4-PowerMacintosh-Darwin.dmg", and look inside --- on any OS X
 system/version. The result is ... surprising, to say the least:
 {{{
 sagebuilder$ otool -L lapack.so
 lapack.so:
 
/Users/buildbot/build/sage/moufang-1/moufang_binary/build/sage-5.3/local/lib/libgfortran.3.dylib
 (compatibility version 4.0.0, current version 4.0.0)
         /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current
 version 1.0.0)
 
/Users/buildbot/build/sage/moufang-1/moufang_binary/build/sage-5.3/local/lib/libgcc_s.1.dylib
 (compatibility version 1.0.0, current version 1.0.0)
         /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
 version 88.1.12)
 }}}
 The two occurences of "libgcc_s.1.dylib" are somewhat fishy, but
 apparently nothing new, and I'd vote for that topic being a complete
 different story, and not to be treated here any further. The library
 "libSystem.B.dylib" is the C runtime on OS X, AFAIK. But then only
 libfortran.dylib --- and no trace whatsoever of any *las.dylib?!?!? For
 comparison, on OS X 10.4 Intel, for Sage-5.3.rc1 the analoguous result is:
 {{{
 sagebuilder$ otool -L lapack.so
 lapack.so:
 
/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
 (compatibility version 1.0.0, current version 192.15.0)
 
/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
 (compatibility version 1.0.0, current version 192.15.0)
         /Users/Shared/sage/sage-5.3.rc1/local/lib/libgfortran.3.dylib
 (compatibility version 4.0.0, current version 4.0.0)
         /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current
 version 1.0.0)
         /Users/Shared/sage/sage-5.3.rc1/local/lib/libgcc_s.1.dylib
 (compatibility version 1.0.0, current version 1.0.0)
         /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
 version 88.3.11)
 }}}
 I would conclude that it is problematic, that the OS X 10.4 PPC
 linker/loader builds at all the current cvxopt-1.1.5 spkg contained in
 Sage-5.3, producing results with such incomplete dependency information.
 Looking closely on the command line, it is told to use "-undefined
 dynamic_lookup" (which seems to save us at runtime later, however only by
 chance, I guess), so essentially it does what it should --- but then, why
 does that linker/loader under some very comparable circumstances error out
 with "/usr/bin/ld: can't locate file for: -lblas"???

 Of the different alternatives to come to an end with this ticket here
 (which is about the new atlas-3.10 spkg), I like the "link idea" (see the
 comment 191 from Francois), i.e. the atlas spkg, generally on OS X (!),
 doing no more and no less than creating links in $SAGE_LOCAL/lib/ --- the
 same as exist in /usr/lib/, at least on OS X 10.4 Intel. More precisely,
 three links pointing to the "framework" blas library:
 {{{
 libatlas.dylib ->
 
/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
 libblas.dylib ->
 
/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
 libcblas.dylib ->
 
/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
 }}}
 and one more link for the "framework" lapack library (all link targets
 being absolute, not relative):
 {{{
 liblapack.dylib ->
 
/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
 }}}
 A quick check shows that at least on OS X Intel, the absolute path to
 these framework libraries is the same for OS X 10.4, 10.5, 10.6, and 10.7
 (I can't check for OS X 10.8), and even on OS X 10.7.3, there still is
 only one version "A", which is the "Current" version of that framework.

 This change, for all OS X variants, would be a bit intrusive. But to me,
 it seems to bring the OS X world a bit closer to the situation on the
 other OSes. I offer to test a respectively updated atlas spkg on the OS X
 systems/versions I have access to. (In the "patches" subdir, one also
 might wish to delete the "edit" duplicates of two files, those with a
 tilde at the end of their file name.)

 Thoughts?

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10508#comment:205>
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