Hi all,

I have developed a little GTK program which uses Matplotlib to render 
plots. Now it is done, I would like to distribute for both Linux and 
Windows platforms but, to make things short, I have some troubles to get 
matplotlib work with GTK backend on Windows.
Basically, here is what I get when I try to use GTK backend with matplotlib:

 >>> import matplotlib
 >>> matplotlib.use("GTK")
 >>> from pylab import *

Traceback (most recent call last):
   File "<pyshell#2>", line 1, in <module>
     from pylab import *
   File "C:\Python26\lib\site-packages\pylab.py", line 1, in <module>
     from matplotlib.pylab import *
   File "C:\Python26\lib\site-packages\matplotlib\pylab.py", line 253, 
in <module>
     from matplotlib.pyplot import *
   File "C:\Python26\lib\site-packages\matplotlib\pyplot.py", line 75, 
in <module>
     new_figure_manager, draw_if_interactive, show = pylab_setup()
   File "C:\Python26\lib\site-packages\matplotlib\backends\__init__.py", 
line 25, in pylab_setup
     globals(),locals(),[backend_name])
   File 
"C:\Python26\lib\site-packages\matplotlib\backends\backend_gtk.py", line 
25, in <module>
     from matplotlib.backends.backend_gdk import RendererGDK, 
FigureCanvasGDK
   File 
"C:\Python26\lib\site-packages\matplotlib\backends\backend_gdk.py", line 
29, in <module>
     from matplotlib.backends._backend_gdk import pixbuf_get_pixels_array
ImportError: No module named _backend_gdk
 >>>

Here is my configuration:
Python: 2.6.2 (r262:71605, Apr 14 2009, 22:40:02) [MSC v.1500 32 bit 
(Intel)] (as given by sys.version)
pygtk: 2.12.1
gtk: 2.16.1
matplotlib: 0.98.5.3 (installed using windows installer from sourceforge)

It seems to me that the matplotlib version provided was no built with 
GTK support (since there is no _backend_gdk.pyd present), am I right or 
did I miss something?

Based on this assumption, I tried to build matplotlib from source... 
Everything went just fine until mingw tried to link this nasty 
_backend_gdk.pyd.
The following command:
C:\MinGW\bin\gcc.exe -mno-cygwin -shared -s 
build\temp.win32-2.6\Release\src\backend_gdk.o 
build\temp.win32-2.6\Release\src\_backend_gdk.def -Lwin32_static\lib 
-LC:/GTK/bin -LC:/GTK/lib -Lwin32_static\lib -LC:\Python26\libs 
-LC:\Python26\PCbuild -lpython26 -lmsvcr90 -o 
build\lib.win32-2.6\matplotlib\backends\_backend_gdk.pyd

actually ended in:
build\temp.win32-2.6\Release\src\backend_gdk.o:backend_gdk.c:(.text+0x18d): 
undefined reference to `gdk_pixbuf_get_type'
build\temp.win32-2.6\Release\src\backend_gdk.o:backend_gdk.c:(.text+0x19f): 
undefined reference to `g_type_check_instance_cast'
build\temp.win32-2.6\Release\src\backend_gdk.o:backend_gdk.c:(.text+0x1a9): 
undefined reference to `gdk_pixbuf_get_height'
build\temp.win32-2.6\Release\src\backend_gdk.o:backend_gdk.c:(.text+0x1b4): 
undefined reference to `gdk_pixbuf_get_width'
build\temp.win32-2.6\Release\src\backend_gdk.o:backend_gdk.c:(.text+0x1bf): 
undefined reference to `gdk_pixbuf_get_has_alpha'
build\temp.win32-2.6\Release\src\backend_gdk.o:backend_gdk.c:(.text+0x1d2): 
undefined reference to `gdk_pixbuf_get_pixels'
build\temp.win32-2.6\Release\src\backend_gdk.o:backend_gdk.c:(.text+0x232): 
undefined reference to `gdk_pixbuf_get_rowstride'
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1

I really have no clue on this one... I must have forgotten something but 
I don't get what!

Has someone got an idea?

Thanks,

Séb

------------------------------------------------------------------------------
Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
is a gathering of tech-side developers & brand creativity professionals. Meet
the minds behind Google Creative Lab, Visual Complexity, Processing, & 
iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian
Group, R/GA, & Big Spaceship. http://www.creativitycat.com 
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to