#16105: Stop linking everything to libntl
-------------------------------------------------+-------------------------
       Reporter:  darij                          |        Owner:
           Type:  defect                         |       Status:  closed
       Priority:  blocker                        |    Milestone:  sage-6.2
      Component:  build                          |   Resolution:  fixed
       Keywords:  ntl, crash                     |    Merged in:
        Authors:  Jeroen Demeyer                 |    Reviewers:  Volker
Report Upstream:  N/A                            |  Braun
         Branch:                                 |  Work issues:
  2770a55d98ddb44edb113207e00c502baf30acb6       |       Commit:
   Dependencies:                                 |     Stopgaps:
-------------------------------------------------+-------------------------

Comment (by fbissey):

 Next
 {{{
 readelf -d /usr/lib64/python2.7/site-
 packages/sage/algebras/quatalg/quaternion_algebra_cython.so

 Dynamic section at offset 0xcd18 contains 29 entries:
   Tag        Type                         Name/Value
  0x0000000000000001 (NEEDED)             Shared library: [libcsage.so]
  0x0000000000000001 (NEEDED)             Shared library: [libgmp.so.10]
  0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
  0x0000000000000001 (NEEDED)             Shared library:
 [libpython2.7.so.1.0]
  0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
  0x000000000000000c (INIT)               0x29e0
 }}}
 and
 {{{
 ldd -r /usr/lib64/python2.7/site-
 packages/sage/algebras/quatalg/quaternion_algebra_cython.so
         linux-vdso.so.1 (0x00007fffbb1ff000)
         libcsage.so => /usr/lib64/libcsage.so (0x00007ff74c655000)
         libgmp.so.10 => /usr/lib64/libgmp.so.10 (0x00007ff74c3e5000)
         libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-
 gnu/4.8.2/libstdc++.so.6 (0x00007ff74c0dc000)
         libpython2.7.so.1.0 => /usr/lib64/libpython2.7.so.1.0
 (0x00007ff74bd2b000)
         libc.so.6 => /lib64/libc.so.6 (0x00007ff74b97e000)
         libntl-6.1.0.so => /usr/lib64/libntl-6.1.0.so (0x00007ff74b5db000)
         libpari-gmp.so.3 => /usr/lib64/libpari-gmp.so.3
 (0x00007ff74af9a000)
         libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-
 gnu/4.8.2/libgcc_s.so.1 (0x00007ff74ad83000)
         libm.so.6 => /lib64/libm.so.6 (0x00007ff74aa86000)
         /lib64/ld-linux-x86-64.so.2 (0x00007ff74cab4000)
         libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ff74a869000)
         libdl.so.2 => /lib64/libdl.so.2 (0x00007ff74a665000)
         libutil.so.1 => /lib64/libutil.so.1 (0x00007ff74a461000)
         libgf2x.so.1 => /usr/lib64/libgf2x.so.1 (0x00007ff74a24c000)
 }}}
 flint and gmpxx are absent.
 {{{
 readelf -d /usr/lib64/python2.7/site-
 packages/sage/groups/perm_gps/partn_ref2/refinement_generic.so

 Dynamic section at offset 0x32cd8 contains 30 entries:
   Tag        Type                         Name/Value
  0x0000000000000001 (NEEDED)             Shared library: [libcsage.so]
  0x0000000000000001 (NEEDED)             Shared library:
 [libflint.so.2.4.3]
  0x0000000000000001 (NEEDED)             Shared library: [libgmp.so.10]
  0x0000000000000001 (NEEDED)             Shared library:
 [libpython2.7.so.1.0]
  0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
  0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
  0x000000000000000c (INIT)               0x5ec8
 }}}
 gmpxx not there and in consequence stdc++ is not there either. It is
 brought in indirectly by ntl through flint and csage from the ldd output.

 {{{
 readelf -d /usr/lib64/python2.7/site-packages/sage/libs/flint/flint.so

 Dynamic section at offset 0x1da8 contains 29 entries:
   Tag        Type                         Name/Value
  0x0000000000000001 (NEEDED)             Shared library: [libcsage.so]
  0x0000000000000001 (NEEDED)             Shared library:
 [libflint.so.2.4.3]
  0x0000000000000001 (NEEDED)             Shared library:
 [libpython2.7.so.1.0]
  0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
  0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
  0x000000000000000c (INIT)               0xf98
 }}}

 At this stage I did a little research and found that the only extension
 linking directly to gmpxx is
 {{{
 File: /usr/lib64/python2.7/site-
 packages/sage/modular/arithgroup/farey_symbol.so

 Dynamic section at offset 0x42be8 contains 32 entries:
   Tag        Type                         Name/Value
  0x0000000000000001 (NEEDED)             Shared library: [libcsage.so]
  0x0000000000000001 (NEEDED)             Shared library: [libgmpxx.so.4]
  0x0000000000000001 (NEEDED)             Shared library: [libgmp.so.10]
  0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
  0x0000000000000001 (NEEDED)             Shared library:
 [libpython2.7.so.1.0]
  0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
  0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
  0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
  0x000000000000000c (INIT)               0xbd28
 }}}

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