On Jul 15, 2008, at 4:18 PM, Chris Swierczewski wrote:
> Michael,
>
>> Have you tried passing -D__Linux at the build time of the extension?
>
> Just to be sure, does that mean adding
>
> opentick = Extension('sage.finance.opentick',
> ...
> extra_compile_args = ["-D
> __Linux"] )
>
> If so, then I still get the following error:
>
> Updating Cython code....
> sage/finance/opentick.pyx -->
> /Users/cswiercz/sage/local//lib/python/site-packages//sage/finance/
> opentick.pyx
>
> Building sage/finance/opentick.cpp because it depends on
> sage/finance/opentick.pyx.
> python2.5 `which cython` --embed-positions --incref-local-binop
> -I/Users/cswiercz/sage/devel/sage-opentick -o
> sage/finance/opentick.cpp sage/finance/opentick.pyx
>
> Error converting Pyrex file to C:
> ------------------------------------------------------------
> ...
> cdef class Opentick:
> cdef c_OTClient *otclient
> ^
> ------------------------------------------------------------
>
> /Users/cswiercz/sage/devel/sage-opentick/sage/finance/opentick.pxd:
> 2:20:
> Syntax error in C variable declaration
> sage: Error running cython.
> sage: There was an error installing modified sage library code.
>
> when I have the following in opentick.pxd
>
> cdef extern from "OTClient.h":
> ctypedef struct c_OTClient "OTClient":
> pass
> c_OTClient *new_OTClient "new OTClient" ()
> void del_OTClient "delete" (c_OTClient *otclient)
I am unable to reproduce this. What I have is:
----------------- opentick.pxd ---------------
cdef extern from "OTClient.h":
ctypedef struct c_OTClient "OTClient":
pass
c_OTClient *new_OTClient "new OTClient" ()
void del_OTClient "delete" (c_OTClient *otclient)
cdef class Opentick:
pass
----------------- opentick.pyx ---------------
cdef class Opentick:
pass
---------------------------------------------------
which compiles fine to c. Perhaps you're redefining something somewhere?
- Robert
_______________________________________________
Cython-dev mailing list
[email protected]
http://codespeak.net/mailman/listinfo/cython-dev