#19610: Fix dependencies on PARI
-------------------------------------+-------------------------------------
       Reporter:  jdemeyer           |        Owner:
           Type:  defect             |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-6.10
      Component:  cython             |   Resolution:
       Keywords:                     |    Merged in:
        Authors:  Jeroen Demeyer     |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/jdemeyer/fix_dependencies_on_pari|  5d0e4d30588ab0f13bfc0770d2b4b407d7580035
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------

Comment (by fbissey):

 I should say I haven't read the whole thread, and now that I see more of
 it. there are some points that can be made:
  * it is of course legal to underlink a library
  * only executable need to have all their symbols resolved

 A case in point is vanilla `gsl`. libgsl needs a `cblas` library but it is
 not linked against `cblas` implementation (unless you do something). So
 there is no entry for a `cblas` in the elf table. When you build an
 application against libgsl you have to provide a cblas library whether
 your application use cblas function or not, to resolve the `cblas` symbols
 in libgsl.

 If libpari was underlinked like that you would have to provide your
 libgmp/libmpir all the time.

 Regarding your slides Gentoo applies "the chasing your tail method"
 (recompile on soname change). I think `sage` fits in that category too.
 I'll note that if you do it correctly a change in soname for libgmp will
 trigger a rebuild of libpari but not of interrupt.so _and it shouldn't
 have too_ if libpari didn't change its soname there is no impact on
 interrupt.so.

 If your handling of soname is not done properly or your are overlinking
 you are exposing yourself to excessive rebuilding. Making sure your
 handling of soname is right is the hard bit. Only know do we have
 interesting mechanism that will trigger rebuild on soname change in Gentoo
 and I won't pretend that every gentoo dev understand them properly.

--
Ticket URL: <http://trac.sagemath.org/ticket/19610#comment:29>
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to