Opened 3 years ago
Last modified 3 years ago
#21341 closed enhancement
Better wrapping of IML — at Version 6
Reported by: | Bouillaguet | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-7.4 |
Component: | interfaces | Keywords: | sd75 |
Cc: | cpernet | Merged in: | |
Authors: | Reviewers: | ||
Report Upstream: | Reported upstream. No feedback yet. | Work issues: | |
Branch: | u/Bouillaguet/iml_wrapper (Commits) | Commit: | 574b4389929f9a444362e88894aff95432cb913c |
Dependencies: | Stopgaps: |
Description (last modified by )
The IML
package should be better wrapped up, for instance in sage/libs/IML
. The cdef
are hidden in sage/matrix/matrix_integer_dense.pyx
.
The problem is that IML
conflicts with linbox because of this in local/include/linbox/util/iml_wrapper.h
:
namespace IML { extern "C" { #include "iml.h" } }
For instance, adding :
cdef extern from "linbox/solutions/solve.h" namespace "LinBox": pass
on top of sage/matrix/matrix_integer_dense.pyx
prevents it from compiling.
Change History (6)
comment:1 Changed 3 years ago by
- Description modified (diff)
- Keywords sd75 added
comment:2 Changed 3 years ago by
- Description modified (diff)
comment:3 Changed 3 years ago by
- Branch set to u/Bouillaguet/iml_wrapper
comment:4 Changed 3 years ago by
- Commit set to 574b4389929f9a444362e88894aff95432cb913c
- Status changed from new to needs_review
comment:5 Changed 3 years ago by
- Status changed from needs_review to needs_work
What is the point of this:
cdef long iml_nullspaceMP(long n, long m, const mpz_t *A, mpz_t * *mp_N_pass): return nullspaceMP(n, m, A, mp_N_pass) cdef iml_nonsingSolvLlhsMM(SOLU_POS solupos, long n, long m, mpz_t *mp_A, mpz_t *mp_B, mpz_t mp_N, mpz_t mp_D): nonsingSolvLlhsMM(solupos, n, m, mp_A, mp_B, mp_N, mp_D)
Why not just call the IML functions directly?
If it's related to the problem in the ticket description, I'd rather try to fix that problem or at least understand why it does not work.
comment:6 Changed 3 years ago by
- Description modified (diff)
Note: See
TracTickets for help on using
tickets.
New commits:
move access to IML code into sage.libs.iml