On 2016/11/01 15:59, Daniel Jakots wrote:
> On Tue, 1 Nov 2016 10:31:47 +0000, Stuart Henderson
> <s...@spacehopper.org> wrote:
> 
> > On 2016/11/01 11:24, Daniel Jakots wrote:
> > > Updated diff: aja noticed that without py-ecdsa installed it says:
> > > INFO: Can't import python ecdsa lib. Disabled certificate
> > > manipulation tools. So add a RDEP on it. I remove py-gnuplot as it
> > > seems it's not imported. I opened an issue to ask them to clarify
> > > scapy's requirements.  
> > 
> > They switched to matplotlib.
> > 
> > https://github.com/secdev/scapy/commit/9cb4a70de3c57dd3779a0aa87ea25914ac6ef98d
> > 
> 
> Thanks, I saw that they use matplotlib but I didn't know that they
> switched to it. I tried to add graphics/py-matplotlib as RDEP but it
> was taken into account (so I removed it before sending the diff). The
> problem is "ImportError: No module named _backend_gdk". I looked at
> py-matplotlib but I didn't find anything suspicious.
> 
> Daniel, do you have any idea?
> 
> Here's a diff for debug purpose:
> 
> $ scapy                                                                       
>                 
> Traceback (most recent call last):
>   File "/usr/local/bin/scapy", line 25, in <module>
>     interact()
>   File "/usr/local/lib/python2.7/site-packages/scapy/main.py", line 300, in 
> interact
>     scapy_builtins = __import__("all",globals(),locals(),".").__dict__
>   File "/usr/local/lib/python2.7/site-packages/scapy/all.py", line 16, in 
> <module>
>     from scapy.arch import *
>   File "/usr/local/lib/python2.7/site-packages/scapy/arch/__init__.py", line 
> 19, in <module>
>     import matplotlib.pyplot as plt
>   File "/usr/local/lib/python2.7/site-packages/matplotlib/pyplot.py", line 
> 109, in <module>
>     _backend_mod, new_figure_manager, draw_if_interactive, _show = 
> pylab_setup()
>   File 
> "/usr/local/lib/python2.7/site-packages/matplotlib/backends/__init__.py", 
> line 32, in pylab_setup
>     globals(),locals(),[backend_name],0)
>   File 
> "/usr/local/lib/python2.7/site-packages/matplotlib/backends/backend_gtkagg.py",
>  line 14, in <module>
>     from matplotlib.backends.backend_gtk import gtk, FigureManagerGTK, 
> FigureCanvasGTK,\
>   File 
> "/usr/local/lib/python2.7/site-packages/matplotlib/backends/backend_gtk.py", 
> line 36, in <module>
>     from matplotlib.backends.backend_gdk import RendererGDK, FigureCanvasGDK
>   File 
> "/usr/local/lib/python2.7/site-packages/matplotlib/backends/backend_gdk.py", 
> line 33, in <module>
>     from matplotlib.backends._backend_gdk import pixbuf_get_pixels_array
> ImportError: No module named _backend_gdk

I don't actually see that here, if matplotlib is installed it looks
like this:

$ scapy 
INFO: Can't import PyX. Won't be able to use psdump() or pdfdump().
WARNING: can't import layer tls: No module named _MD2
Welcome to Scapy (unknown.version)

And if it isn't installed:

$ scapy 
Traceback (most recent call last):
  File "/usr/local/bin/scapy", line 25, in <module>
    interact()
  File "/usr/local/lib/python2.7/site-packages/scapy/main.py", line 300, in 
interact
    scapy_builtins = __import__("all",globals(),locals(),".").__dict__
  File "/usr/local/lib/python2.7/site-packages/scapy/all.py", line 16, in 
<module>
    from scapy.arch import *
  File "/usr/local/lib/python2.7/site-packages/scapy/arch/__init__.py", line 
18, in <module>
    from matplotlib import get_backend as matplotlib_get_backend
ImportError: No module named matplotlib

Reply via email to