I think this may have been working somewhat of by accident
before, because it says 'extern "C"' in one place and in another
say '// sorry, if you want a C version, feel free to add it'

  I delayed a bit sagemath 6.4 update due to some dependencies
needing to be updated in Fedora, in the meantime 6.4.1 was
released.

  Trying to update to Fedora sagemath rpm to 6.4.1 I am being
hit by this:

---%<---
  File 
"/home/pcpa/rpmbuild/BUILDROOT/sagemath-6.4.1-1.fc22.x86_64/usr/lib64/python2.7/site-packages/sage/libs/ntl/__init__.py",
line 1, in <module>
    import all
  File 
"/home/pcpa/rpmbuild/BUILDROOT/sagemath-6.4.1-1.fc22.x86_64/usr/lib64/python2.7/site-packages/sage/libs/ntl/all.py",
line 34, in <module>
    from sage.libs.ntl.ntl_ZZ_p import (
ImportError: 
/home/pcpa/rpmbuild/BUILDROOT/sagemath-6.4.1-1.fc22.x86_64/usr/lib64/python2.7/site-packages/sage/libs/ntl/ntl_ZZ_p.so:
undefined symbol: ZZ_p_to_int
error: Bad exit status from /var/tmp/rpm-tmp.moMkJq (%install)
---%<---

  Previously it was exported as a "C" symbol:

$ rpm -q sagemath
sagemath-6.3-3.fc22.x86_64
$ objdump -T --demangle /usr/lib64/libcsage.so | grep ZZ_p_to_int
0000000000008760 g    DF .text  0000000000000005  Base        ZZ_p_to_int

  But the newly generated libcsage.so does only show a C++ symbol:
$ objdump -T --demangle BUILD/sage-6.4.1/src/c_lib/libcsage.so | grep
ZZ_p_to_int
00000000000087d0 g    DF .text  0000000000000005  Base
ZZ_p_to_int(NTL::ZZ_p const&)

  So, it may be required some extra wrapping, but more likely,
patch the cython code to only use ZZ_to_int(ZZ*).

  This may also be useful...
$ rpm -q gcc binutils
gcc-4.9.2-1.fc22.x86_64
binutils-2.24-29.fc22.x86_64

Thanks,
Paulo

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to