hello,
I'm trying to create a distro with py2exe, including MatPlotLib. After finally resolving the matplotlib datapath problem, I bumped into a new problem concerning backends.
I'm using MatPlotLib 0.91.2 I only need the wx-Backend.
In Py2exe I tried to exclude as many backends as possible, but the excludes seems to have no effect. 'excludes' : [ '_gtkagg', '_tkagg', '_agg2', '_cairo', '_cocoaagg', '_fltkagg', '_gtk', '_gtkcairo', 'backend_qt', 'backend_qt4', 'backend_qt4agg', 'backend_qtagg', 'backend_cairo', 'backend_cocoaagg', 'Tkconstants', 'Tkinter', 'tcl', "_imagingtk", "PIL._imagingtk", "ImageTk", "PIL.ImageTk", "FixTk" ],
The creating of the distro seems to work, but the distro won't run, because of some problems with tk-backends, (which I don't need or even want).
The problem might be caused by a crashed installation of tk in the past. And might also be amplified by the fact that I use from pylab import *
Now I guess I can effectively remove the unnecessary backends, by removing the following lines from \backends__init__.py
interactive_bk = ['GTK', 'GTKAgg', 'GTKCairo', 'FltkAgg', 'QtAgg', 'Qt4Agg', 'TkAgg', 'WX', 'WXAgg', 'CocoaAgg'] non_interactive_bk = ['Agg2', 'Agg', 'Cairo', 'EMF', 'GDK', 'Pdf', 'PS', 'SVG', 'Template']
I don't know if this solves the problem (haven't tried it yet), but I certainly thinks this is not the proper way to go.
Any solution / suggestion would be very welcome (while MatPlotLib is quit essential in my distro)
thanks, Stef Mientki
On Feb 16, 2008 5:19 AM, Stef Mientki s.mientki@ru.nl wrote:
In Py2exe I tried to exclude as many backends as possible, but the excludes seems to have no effect. 'excludes' : [ '_gtkagg', '_tkagg', '_agg2', '_cairo', '_cocoaagg', '_fltkagg', '_gtk', '_gtkcairo', 'backend_qt', 'backend_qt4', 'backend_qt4agg', 'backend_qtagg', 'backend_cairo', 'backend_cocoaagg', 'Tkconstants', 'Tkinter', 'tcl', "_imagingtk", "PIL._imagingtk", "ImageTk", "PIL.ImageTk", "FixTk" ],
I am not sure why the excluding is not working, but it shouldn't affect you app. If you are setting the backend in matplotlibrc, and successfully distributing this file, then matplotlib will only try and load that backend and the presence or abscense of the others shouldn't matter. In recent versions of matplotlib (eg the 91.2 version you are using), you can control the build process with setup.cfg.
JDH
John Hunter wrote:
On Feb 16, 2008 5:19 AM, Stef Mientki s.mientki@ru.nl wrote:
In Py2exe I tried to exclude as many backends as possible, but the excludes seems to have no effect. 'excludes' : [ '_gtkagg', '_tkagg', '_agg2', '_cairo', '_cocoaagg', '_fltkagg', '_gtk', '_gtkcairo', 'backend_qt', 'backend_qt4', 'backend_qt4agg', 'backend_qtagg', 'backend_cairo', 'backend_cocoaagg', 'Tkconstants', 'Tkinter', 'tcl', "_imagingtk", "PIL._imagingtk", "ImageTk", "PIL.ImageTk", "FixTk" ],
I am not sure why the excluding is not working, but it shouldn't affect you app. If you are setting the backend in matplotlibrc, and successfully distributing this file, then matplotlib will only try and load that backend and the presence or abscense of the others shouldn't matter. In recent versions of matplotlib (eg the 91.2 version you are using), you can control the build process with setup.cfg.
What is setup.cfg, where can I find it and where can I get information about it ?
thanks, Stef Mientki
JDH
To unsubscribe, e-mail: wxPython-users-unsubscribe@lists.wxwidgets.org For additional commands, e-mail: wxPython-users-help@lists.wxwidgets.org