I have trouble launching Enable from ETS package. My comrades running the same package of ETS succesfully. They have x86_64 Ubuntu, but I have x86 version.
After a lot of time I've found solution:
So, if you have trouble launching Enable such as:
from enthought.enable.api import Window
File "/usr/local/lib/python2.7/dist-packages/etsproxy-0.1.0-py2.7.egg/enthought/enable/api.py", line 2, in <module>
from enable.api import *
File "/usr/local/lib/python2.7/dist-packages/Enable-3.4.2-py2.7-linux-i686.egg/enable/api.py", line 42, in <module>
from graphics_context import GraphicsContextEnable, ImageGraphicsContextEnable
File "/usr/local/lib/python2.7/dist-packages/Enable-3.4.2-py2.7-linux-i686.egg/enable/graphics_context.py", line 85, in <module>
class GraphicsContextEnable(EnableGCMixin, GraphicsContext):
TypeError: Error when calling the metaclass bases
metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
You need to create site.cfg file in enable directory with this contents:
[x11]library_dirs=/usr/lib:/usr/lib/X11:/usr/lib/i386-linux-gnu
include_dirs=/usr/include/X11:/usr/include:/usr/lib/i386-linux-gnu
Then, run python setup.py build and python setup.py install
If that doesn't help, use the following:
LD_PRELOAD=/usr/lib/i386-linux-gnu/libX11.so python myawesomefile.py
Комментариев нет:
Отправить комментарий