[Cython] libimobiledevice build broken by 0.20b2

Robert Bradshaw robertwb at gmail.com
Tue Jan 14 09:20:40 CET 2014


On Sun, Jan 12, 2014 at 11:35 AM, Julian Taylor
<jtaylor.debian at googlemail.com> wrote:
> Hi,
> libimobiledevice cython file fails to build with cython git head and 0.20b2.
> It works with older versions, the bad commit in cython is:
> commit db5d5a41b852fa32876688198e3d2d46f12de858
> Author: Robert Bradshaw <robertwb at gmail.com>
> Date:   Mon Dec 30 22:24:04 2013 -0800
>
>     Fix bug when base classes were declared out-of-order.
>
>
> its parent commit succeeds the build.
>
>
> the file is:
> https://github.com/libimobiledevice/libimobiledevice/blob/master/cython/imobiledevice.pyx
>
> build can be run with
> ./autogen.sh
> ./configure --disable-openssl
> make CYTHON=/path/to/cython
>
> imobiledevice.c:13521:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:13644:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:13783:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:13906:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:14029:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:14345:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:14468:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:14591:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:14791:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:15046:88: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
> imobiledevice.c:26762:89: error: 'struct
> __pyx_obj_13imobiledevice_ScreenshotrClient' has no member named
> '__pyx_vtab'
> imobiledevice.c:53310:4: error: 'struct
> __pyx_obj_13imobiledevice_ScreenshotrClient' has no member named
> '__pyx_vtab'
> imobiledevice.c:53733:4: error: 'struct
> __pyx_obj_13imobiledevice_MobileSyncClient' has no member named '__pyx_vtab'
>
>
> Note, I know neither cython nor imobiledevice, Yaroslav Halchenko just
> encountered this issue while testing packages with 0.20b2 in Debian.
> Let me know if you need more information.

Thanks for the report! Looks like it's a bunch of pxi files with class
definitions that get included, fixed via
https://github.com/cython/cython/commit/27a95b9bdcdc45e95209ec92e546c0e439ecd2c9

(FWIW, I never was able to get this package to compile, but the
generated code looks better.)


More information about the cython-devel mailing list