#9167: Update ECL and resolve ecl.dll conflict on Cygwin
----------------------------------------------------------------+-----------
       Reporter:  was                                           |         
Owner:  tbd                  
           Type:  defect                                        |        
Status:  needs_info           
       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 #13860                                 |      
Stopgaps:                       
----------------------------------------------------------------+-----------
Changes (by leif):

  * dependencies:  #13324 => #13324 #13860


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
>
> 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

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 Maxima's
 `spkg-install`. It is done in
 http://boxen.math.washington.edu/home/dima/packages/maxima-5.26.0.p1.spkg
 (#13860).

--

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

Reply via email to