#9167: Update ECL and resolve ecl.dll conflict on Cygwin
----------------------------------------------------------------+-----------
Reporter: was |
Owner: tbd
Type: defect |
Status: needs_review
Priority: major |
Milestone: sage-5.6
Component: cygwin |
Resolution:
Keywords: cygwin spkg ecl | Work
issues: use matching autoconf
Report Upstream: None of the above - read trac for reasoning. |
Reviewers: Karl-Dieter Crisman
Authors: Jean-Pierre Flori | Merged
in:
Dependencies: #13324 |
Stopgaps:
----------------------------------------------------------------+-----------
Changes (by dimpase):
* status: needs_work => needs_review
Old description:
> Though the C-library interface to ecl builds on cygwin, it does not work
> at all. All tests fail:
>
> {{{
> sage: import sage.libs.ecl
> ---------------------------------------------------------------------------
> ImportError Traceback (most recent call
> last)
>
> /home/wstein/sage-4.4.3/<ipython console> in <module>()
>
> ImportError: No such process
> sage:
> }}}
>
> The reason of this is a name clash: there are two different libraries
> called ecl.dll.
> One in SAGE_LOCAL/lib/ and one in SAGE_LOCAL/lib/python/site-
> packages/sage/libs/
> It is the second one whose importing fails because it should be linked to
> the first one, but cygcheck shows that this dependency is resolved to
> itself!
> This is of course dysfunctional, whence the import failure.
>
> The easiest solution would be to rename sage/libs/ecl.pyx to something
> else,thus avoiding a name clash.
> The solution proposed here is different and more indirect:
> patch ECL build system so that it follows the name convention proposed by
> Cygwin.
> The shared library itself is now in SAGE_LOCAL/bin/cygecl.dll.
> In addition, an import file is created in SAGE_LOCAL/lib/libecl.dll.a.
>
> An updated spkg, based on the one in #13324, is available at
> http://boxen.math.washington.edu/home/jpflori/ecl-12.12.1.p1.spkg
New description:
Though the C-library interface to ecl builds on cygwin, it does not work
at all. All tests fail:
{{{
sage: import sage.libs.ecl
---------------------------------------------------------------------------
ImportError Traceback (most recent call
last)
/home/wstein/sage-4.4.3/<ipython console> in <module>()
ImportError: No such process
sage:
}}}
The reason of this is a name clash: there are two different libraries
called ecl.dll.
One in SAGE_LOCAL/lib/ and one in SAGE_LOCAL/lib/python/site-
packages/sage/libs/
It is the second one whose importing fails because it should be linked to
the first one, but cygcheck shows that this dependency is resolved to
itself!
This is of course dysfunctional, whence the import failure.
The easiest solution would be to rename sage/libs/ecl.pyx to something
else,thus avoiding a name clash.
The solution proposed here is different and more indirect:
patch ECL build system so that it follows the name convention proposed by
Cygwin.
The shared library itself is now in SAGE_LOCAL/bin/cygecl.dll.
In addition, an import file is created in SAGE_LOCAL/lib/libecl.dll.a.
An updated spkg, based on the one in #13324, is available at
http://boxen.math.washington.edu/home/jpflori/ecl-12.12.1.p1.spkg
As ECL also comes with a new ASDF, one needs a small change in spkg-
install. It is done in
http://boxen.math.washington.edu/home/dima/packages/maxima-5.26.0.p1.spkg
--
Comment:
Replying to [comment:83 jpflori]:
> Feel free to do so in another ticket, change dependencies here, update
#13364 to be based on this new ticket, and remove dependency on this ECL
ticket form #13364.
I'd rather see this ticket brought to completion. I imagine it's just a
small autoconf fix, right?
I'm adding to the ticket description a link to updated maxima 5.26 spkg.
Can one close #13324 as a duplicate?
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9167#comment:84>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.