[Scitech] Experiment with sagemath and Polybori needs to be built

Paulo César Pereira de Andrade paulo.cesar.pereira.de.andrade at gmail.com
Thu Apr 26 01:24:32 UTC 2012


Em 25 de abril de 2012 21:37, Paulo César Pereira de Andrade
<paulo.cesar.pereira.de.andrade at gmail.com> escreveu:
[...]

  I did a test build with the linbox in fedora, but note that in Mandriva
I packaged linbox 1.1.6 and did not upgrade to have it matching
sagemath spkg version. So, using linbox 1.2.2 in fedora, I see:

sage/libs/linbox/linbox.cpp: In function 'int
__pyx_f_4sage_4libs_6linbox_6linbox_17Linbox_modn_dense_echelonize(__pyx_obj_4sage_4libs_6linbox_6linbox_Linbox_modn_dense*)':
sage/libs/linbox/linbox.cpp:2308:123: error:
'linbox_modn_dense_echelonize' was not declared in this scope
sage/libs/linbox/linbox.cpp: In function 'PyObject*
__pyx_pf_4sage_4libs_6linbox_6linbox_17Linbox_modn_dense_4_poly(PyObject*,
PyObject*)':
sage/libs/linbox/linbox.cpp:2480:335: error: no matching function for
call to 'linbox_modn_dense_minpoly(size_t&, size_t**, size_t*,
size_t&, size_t**&, int&)'
sage/libs/linbox/linbox.cpp:2480:335: note: candidate is:
/usr/include/linbox/linbox-sage.h:65:11: note: template<class Element>
Element* linbox_modn_dense_minpoly(Element, Element**, size_t*,
size_t, Element*)
sage/libs/linbox/linbox.cpp:2527:43: error:
'linbox_modn_dense_delete_array' was not declared in this scope
sage/libs/linbox/linbox.cpp: In function 'PyObject*
__pyx_f_4sage_4libs_6linbox_6linbox_17Linbox_modn_dense_matrix_matrix_multiply(__pyx_obj_4sage_4libs_6linbox_6linbox_Linbox_modn_dense*,
size_t**, size_t**, size_t, size_t)':
sage/libs/linbox/linbox.cpp:2578:187: error: no matching function for
call to 'linbox_modn_dense_matrix_matrix_multiply(size_t&, size_t**&,
size_t**&, size_t**&, size_t&, size_t&, size_t&, size_t&)'
sage/libs/linbox/linbox.cpp:2578:187: note: candidate is:
/usr/include/linbox/linbox-sage.h:77:9: note: template<class Element>
Element* linbox_modn_dense_matrix_matrix_multiply(Element, Element*,
Element*, Element*, size_t, size_t, size_t)
sage/libs/linbox/linbox.cpp: In function 'long unsigned int
__pyx_f_4sage_4libs_6linbox_6linbox_17Linbox_modn_dense_rank(__pyx_obj_4sage_4libs_6linbox_6linbox_Linbox_modn_dense*)':
sage/libs/linbox/linbox.cpp:2634:117: error: 'linbox_modn_dense_rank'
was not declared in this scope
sage/libs/linbox/linbox.cpp: In function 'size_t
__pyx_f_4sage_4libs_6linbox_6linbox_17Linbox_modn_dense_det(__pyx_obj_4sage_4libs_6linbox_6linbox_Linbox_modn_dense*,
int)':
sage/libs/linbox/linbox.cpp:2697:116: error: no matching function for
call to 'linbox_modn_dense_det(size_t&, size_t**&, size_t&, size_t&)'
sage/libs/linbox/linbox.cpp:2697:116: note: candidate is:
/usr/include/linbox/linbox-sage.h:59:9: note: template<class Element>
Element linbox_modn_dense_det(Element, Element*, size_t, size_t)
sage/libs/linbox/linbox.cpp: In function 'PyObject*
__pyx_pf_4sage_4libs_6linbox_6linbox_20Linbox_integer_dense_2_poly(PyObject*,
PyObject*)':
sage/libs/linbox/linbox.cpp:5127:253: error: invalid initialization of
non-const reference of type '__mpz_struct (*&)[1]' from an rvalue of
type '__mpz_struct (**)[1]'
/usr/include/linbox/linbox-sage.h:108:6: error: in passing argument 1
of 'void linbox_integer_dense_minpoly(__mpz_struct (*&)[1], size_t&,
size_t, __mpz_struct (**)[1])'
sage/libs/linbox/linbox.cpp:5139:254: error: invalid initialization of
non-const reference of type '__mpz_struct (*&)[1]' from an rvalue of
type '__mpz_struct (**)[1]'
/usr/include/linbox/linbox-sage.h:110:6: error: in passing argument 1
of 'void linbox_integer_dense_charpoly(__mpz_struct (*&)[1], size_t&,
size_t, __mpz_struct (**)[1])'
sage/libs/linbox/linbox.cpp: In function 'PyObject*
__pyx_f_4sage_4libs_6linbox_6linbox_20Linbox_integer_dense_matrix_matrix_multiply(__pyx_obj_4sage_4libs_6linbox_6linbox_Linbox_integer_dense*,
__mpz_struct (**)[1], __mpz_struct (**)[1], size_t, size_t)':
sage/libs/linbox/linbox.cpp:5283:173: error: too many arguments to
function 'int linbox_integer_dense_matrix_matrix_multiply(__mpz_struct
(**)[1], __mpz_struct (**)[1], __mpz_struct (**)[1], size_t, size_t,
size_t)'
/usr/include/linbox/linbox-sage.h:115:5: note: declared here
error: command 'gcc' failed with exit status 1

But hopefully it would not crash as it appears to have a different
approach to an issue that causes crashes when built with --enable-sage
that is linbox-destructor.patch.

  The patch I use in Mandriva for linbox 1.1.6 is

http://svn.mandriva.com/cgi-bin/viewvc.cgi/packages/cooker/linalg-linbox/current/SOURCES/linbox-1.1.6-sage.diff?view=markup

  Need to check also upcoming sagemath 5.0 sources, but at first
testing 4.8 that is the latest release.

>  Note that at first I want to have it working, then after that redesign
> the package to split in multiple components, change some paths,
> etc. And from previous experience, once getting it built, expect
> very long gdb&valgrind sessions until figuring out what causes
> several different crashes.
>
>>> --
>>> Jerry James
>>> http://www.jamezone.org/
>
> Thanks,
> Paulo


More information about the scitech mailing list