[Xcb] libxcb-1.9.3 fails to build - python generation script error

Jason Vas Dias jason.vas.dias at gmail.com
Thu Apr 14 09:30:59 UTC 2016


Oops, sorry, I had checked out the HEAD of the xcb/proto repository -
checking out tag 'xcbproto-1.9' resolved this issue.

On 13/04/2016, Jason Vas Dias <jason.vas.dias at gmail.com> wrote:
> Hi -
>
> The python scripts shipped with libxcb-1.9.3,
> the latest tag  checked out from GIT,
> do not seem to be functional .
>
> After successful configuration, having installed all xproto packages,
> python-2.7.1, and libXdmcp + libXau, I run:
>
> $ make
> Making all in src
> make[1]: Entering directory '/usr/build/linux/libxcb/src'
> /usr/bin/python ./c_client.py -p /usr/lib/python2.7/site-packages
> /usr/share/xcb/xproto.xml
> Traceback (most recent call last):
>   File "./c_client.py", line 3011, in <module>
>     module.generate()
>   File "/usr/lib/python2.7/site-packages/xcbgen/state.py", line 106, in
> generate
>     item.out(name)
>   File "./c_client.py", line 2854, in c_request
>     _c_type_setup(self, name, ('request',))
>   File "./c_client.py", line 426, in _c_type_setup
>     _c_serialize('sizeof', self)
>   File "./c_client.py", line 1097, in _c_serialize
>     param_fields, wire_fields, params = get_serialize_params(context, self)
>   File "./c_client.py", line 622, in get_serialize_params
>     unresolved_fields = resolve_expr_fields(self)
>   File "./c_client.py", line 569, in resolve_expr_fields
>     expr_fields += get_expr_fields(field.type)
>   File "./c_client.py", line 541, in get_expr_fields
>     unresolved_fields_names = get_expr_field_names(self.expr)
>   File "./c_client.py", line 537, in get_expr_field_names
>     return get_expr_field_names(expr.lhs) + get_expr_field_names(expr.rhs)
>   File "./c_client.py", line 511, in get_expr_field_names
>     if expr.op is None:
> AttributeError: 'NoneType' object has no attribute 'op'
> Makefile:1293: recipe for target 'xproto.c' failed
> make[1]: *** [xproto.c] Error 1
> make[1]: Leaving directory '/usr/build/linux/libxcb/src'
> Makefile:574: recipe for target 'all-recursive' failed
> make: *** [all-recursive] Error 1
>
> It appears that the 'expr' parameter of get_expr_field_names is None,
> and it does not handle this case.
>
> Please can anyone let me know :
>   o The last working version of libxcb where the python C generation
> scripts
>      are known to function correctly ;
> or , failing that - could anyone please provide me with pre-generated copies
> of
> the C files meant to be generated by the dysfunctional python scripts ?
>
> Thanks & Regards,
> Jason
>


More information about the Xcb mailing list