Ah the joys of bundling (Wish I had time to work on it today)

Blake reports that things go to handbaskets when attempting to include OpenGL (-ctypes) in a Py2App bundle. Apparently the setuptools entry-point registrations (which are required by OpenGL-ctypes) are not getting triggered so there's no handlers available.

And there's the flip-side of using big, standard(-ish) packages, when they break, you have to be willing (and have time) to spelunk into them to fix the problem.

Anyone have suggestions? I don't have a Mac on which to test, btw.


  1. Blake Winton

    Blake Winton on 10/19/2006 12:38 p.m. #

    Just to add some notes, I can run the app from the command line and everything's hunky dory, but when I run py2app (or, I suspect, py2exe, if I ported it to Windows), and try to run it, I get the following error:<br />
    ---------------------------<br />
    Screen saver &#8220;PastelsView&#8221; did not load properly. Please select another screen saver.<br />
    <br />
    Error: exceptions.TypeError: No array-type handler for type (value: c_ulong(0L)) registered<br />
    ---------------------------<br />
    <br />
    Now, I've gotten similar errors with PIL before, and have had to resolve them by manually importing some classes that PIL used, to make sure that their initializers ran, and that they got picked up by the dependancy tracker in py2{app,exe}. Do I have to do something similar with your crazy pluggable array handling scheme?<br />
    <br />
    (Now all I need to do is point PJE over here, and see what happens...)<br />
    <br />
    As a side question, Mike, can you create a py2exe executable that runs correctly? (Assuming that you have access to a Windows box...)<br />
    <br />
    Later,<br />

  2. Ronald Oussoren

    Ronald Oussoren on 10/22/2006 4:14 a.m. #

    Py2app knows nothing about eggs, but treats them like regular packages in site-packages. One side-effect of this is that the egg-meta data isn't included in the application bundle.<br />
    <br />
    This is probably fixable through a py2app recipe, although the better fix would be to teach py2app about eggs. We'll get around to that eventually.

Comments are closed.


Pingbacks are closed.