[lxml-dev] Building LXML Trunk

Hi,
I've tried to build lxml from trunk today, on Win32. Got the following error:
src\lxml\etree.c(880) : error C2059: syntax error : ')' src\lxml\etree.c(881) : error C2059: syntax error : ')' src\lxml\etree.c(882) : error C2059: syntax error : ')' src\lxml\etree.c(883) : error C2059: syntax error : ')'
Any clue? Smells like a Pyrex issue?

Hi Sidnei,
Sidnei da Silva wrote:
I've tried to build lxml from trunk today, on Win32. Got the following error:
src\lxml\etree.c(880) : error C2059: syntax error : ')' src\lxml\etree.c(881) : error C2059: syntax error : ')' src\lxml\etree.c(882) : error C2059: syntax error : ')' src\lxml\etree.c(883) : error C2059: syntax error : ')'
Any clue? Smells like a Pyrex issue?
Looks like it, yes. The problem lies in the following lines:
void ((*registerGlobalFunctions)(struct __pyx_obj_5etree__BaseContext *,void (*),int ((void (*),PyObject *,PyObject *)))); void ((*registerLocalFunctions)(struct __pyx_obj_5etree__BaseContext *,void (*),int ((void (*),PyObject *,PyObject *)))); PyObject *((*unregisterAllFunctions)(struct __pyx_obj_5etree__BaseContext *,void (*),int ((void (*),PyObject *,PyObject *)))); PyObject *((*unregisterGlobalFunctions)(struct __pyx_obj_5etree__BaseContext *,void (*),int ((void (*),PyObject *,PyObject *))));
These are new in lxml 1.3. Looks like MS's "C" compiler can't handle that.
Any idea how we could get this to work? I mean, without the obvious approach of switching to MinGW. :)
Stefan

I don't have an idea myself, but I can ask Mark to take a look at it. My shallow C experience is not enough to parse that. :)
On 5/23/07, Stefan Behnel stefan_ml@behnel.de wrote:
Hi Sidnei,
Sidnei da Silva wrote:
I've tried to build lxml from trunk today, on Win32. Got the following error:
src\lxml\etree.c(880) : error C2059: syntax error : ')' src\lxml\etree.c(881) : error C2059: syntax error : ')' src\lxml\etree.c(882) : error C2059: syntax error : ')' src\lxml\etree.c(883) : error C2059: syntax error : ')'
Any clue? Smells like a Pyrex issue?
Looks like it, yes. The problem lies in the following lines:
void ((*registerGlobalFunctions)(struct __pyx_obj_5etree__BaseContext *,void (*),int ((void (*),PyObject *,PyObject *)))); void ((*registerLocalFunctions)(struct __pyx_obj_5etree__BaseContext *,void (*),int ((void (*),PyObject *,PyObject *)))); PyObject *((*unregisterAllFunctions)(struct __pyx_obj_5etree__BaseContext *,void (*),int ((void (*),PyObject *,PyObject *)))); PyObject *((*unregisterGlobalFunctions)(struct __pyx_obj_5etree__BaseContext *,void (*),int ((void (*),PyObject *,PyObject *))));
These are new in lxml 1.3. Looks like MS's "C" compiler can't handle that.
Any idea how we could get this to work? I mean, without the obvious approach of switching to MinGW. :)
Stefan

Thanks a lot for posting this amazing article. https://bit.ly/3CvwFXZ
participants (4)
-
fionagarner085@gmail.com
-
galateelabrie756@gmail.com
-
Sidnei da Silva
-
Stefan Behnel