[Eric] Debugger (no connection)

Detlev Offenbach detlev at die-offenbachs.de
Sat Sep 13 15:53:48 BST 2008


On Samstag, 13. September 2008, Albert Zeyer wrote:
> I almost expected that.
>
> The following is written there:
>
> lo0 (FE80:0:0:0:0:0:0:1, 127.0.0.1, 0:0:0:0:0:0:1)

Is that address (FE80:0:0:0:0:0:0:1) assigned to hostAddress in the Debug 
server init method?

>
> Am 13.09.2008 um 16:24 schrieb Detlev Offenbach:
> > Hi,
> >
> > are you using IPv6? Please let me know, what is displayed on the
> > General
> > debugger settings page for lo0. hostAddress has a default value
> > of "127.0.0.1". In the configuration dialog on the a.m page, the
> > first entry
> > after '(' is taken as the hostAddress.
> >
> > Regards,
> > Detlev
> >
> > On Samstag, 13. September 2008, Albert Zeyer wrote:
> >> Hi,
> >>
> >> I figured out the problem:
> >>
> >> In DebugServer.__init__(), the self.listen(hostAddress) fails
> >> (returns
> >> false). Also self.isListening() returns false. If I replace it with
> >> just self.listen(), it works. hostAddress.toString() returns
> >> PyQt4.QtCore.QString(u'FE80:0:0:0:0:0:0:1'). I also checked
> >> self.errorString() after it failed and it returns
> >> PyQt4.QtCore.QString(u'The address is not available'). It seems that
> >> hostAddress is somehow wrong. I checked the preferences of Eric and
> >> under General debugger settings, Network interface, "Only selected
> >> interface" is activated there and the lo0-interface is selected (that
> >> it the loopback-device under MacOSX). When I just switch to "All
> >> network interfaces" there, it also works. It seems that Eric takes
> >> somehow the wrong hostAddress out of it.
> >>
> >> For now, it is not that important to bind Eric only on the loopback-
> >> device, I am mot of the time in a secure network anyway. But do you
> >> have idea how to fix that in future?
> >>
> >> Regards,
> >> Albert
> >>
> >> Am 13.09.2008 um 15:43 schrieb Detlev Offenbach:
> >>> Hi,
> >>>
> >>> I don't have any Mac OS X around here, so eric4 is untested (at
> >>> least by me)
> >>> on that platform. However, I will assist you in debugging the
> >>> problem.
> >>>
> >>> 1) Please check in the debug client, which address and port it is
> >>> given by the
> >>> debug server. Insert a print statement in the main() method and
> >>> print
> >>> sys.argv.
> >>>
> >>> 2) You may change the debug server to passive mode using the
> >>> configuration
> >>> dialog and connect the client manually tp port 42424 (the default).
> >>>
> >>> 3) If your system is using only IPv6, the call in line 960 may fail
> >>> because
> >>> DebugAddress is assigned the localhost IP 127.0.0.1 (IPv4). It is
> >>> defined on
> >>> line 11 in DebugProtocol.py. If you're using IPv6, try changing it
> >>> to "::1".
> >>>
> >>> Regards,
> >>> Detlev
> >>>
> >>> On Samstag, 13. September 2008, Albert Zeyer wrote:
> >>>> Hi,
> >>>>
> >>>> I am new to Eric but I like the IDE as far as I have explored it. I
> >>>> though have some problems.
> >>>>
> >>>> My environment: Eric 4.2.1 (r2426) on MacOSX with Python 2.5.1.
> >>>>
> >>>> The problem: The debugger stopped working. (I think it has worked
> >>>> at
> >>>> the very beginning, at least I cannot remember that I have seen the
> >>>> error message there.) The first thing after I start the IDE is the
> >>>> following message in the Log-viewer:
> >>>>
> >>>> Traceback (most recent call last):
> >>>> File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClient.py", line 38, in <module>
> >>>> debugClient.main()
> >>>> File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClientBase.py", line 1858, in main
> >>>> self.connectDebugger(port, remoteAddress, redirect)
> >>>> File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClientBase.py", line 960, in connectDebugger
> >>>> sock.connect((DebugAddress,port))
> >>>> File "<string>", line 1, in connect
> >>>> socket.error: (49, "Can't assign requested address")
> >>>>
> >>>> I also get the same message in the Shell:
> >>>>
> >>>> StdErr: Traceback (most recent call last):
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClient.py", line 38, in <module>
> >>>>    debugClient.main()
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClientBase.py", line 1858, in main
> >>>>    self.connectDebugger(port, remoteAddress, redirect)
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClientBase.py", line 960, in connectDebugger
> >>>>    sock.connect((DebugAddress,port))
> >>>>  File "<string>", line 1, in connect
> >>>> socket.error: (49, "Can't assign requested address")
> >>>>
> >>>> This comes right after the start. But also when I try to debug any
> >>>> script, I get this message again and the debugger also seems not to
> >>>> work.
> >>>>
> >>>> I browsed a bit through the code of Eric4 to understand the
> >>>> debugging
> >>>> system. It seems that the IDE is starting a debug-server (the
> >>>> DebugServer class) which is built into the IDE and then it starts
> >>>> an
> >>>> external Python tool, the DebugClient, which connects over a TCP
> >>>> port
> >>>> to the DebugServer. The DebugServer provides all debugging
> >>>> functions
> >>>> and the DebugClient controls that.
> >>>>
> >>>> I wondered now a bit about the message from DebugClient. "Can't
> >>>> assign
> >>>> requested address" normally only appears if you used a invalid port
> >>>> number, like 0. On all other ports, it should give the message
> >>>> "Connection refused". I also tried that myself:
> >>>>
> >>>> Macintosh:~ az$ python /Library/Python/2.5/site-packages/eric4/
> >>>> DebugClients/Python/DebugClient.py 1
> >>>> Traceback (most recent call last):
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClient.py", line 38, in <module>
> >>>>    debugClient.main()
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClientBase.py", line 1858, in main
> >>>>    self.connectDebugger(port, remoteAddress, redirect)
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClientBase.py", line 960, in connectDebugger
> >>>>    sock.connect((DebugAddress,port))
> >>>>  File "<string>", line 1, in connect
> >>>> socket.error: (61, 'Connection refused')
> >>>>
> >>>> And:
> >>>>
> >>>> Macintosh:~ az$ python /Library/Python/2.5/site-packages/eric4/
> >>>> DebugClients/Python/DebugClient.py 0
> >>>> Traceback (most recent call last):
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClient.py", line 38, in <module>
> >>>>    debugClient.main()
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClientBase.py", line 1858, in main
> >>>>    self.connectDebugger(port, remoteAddress, redirect)
> >>>>  File "/Library/Python/2.5/site-packages/eric4/DebugClients/Python/
> >>>> DebugClientBase.py", line 960, in connectDebugger
> >>>>    sock.connect((DebugAddress,port))
> >>>>  File "<string>", line 1, in connect
> >>>> socket.error: (49, "Can't assign requested address")
> >>>>
> >>>> Then, to go further, I tried to figure out on which port the server
> >>>> was listening. I browsed through the code and it seems that the
> >>>> server
> >>>> just uses a random port (it does not specify that). I thought I
> >>>> perhaps try out to connect to that port manually with the
> >>>> DebugClient.
> >>>> But it seems that the server was not correctly started, because
> >>>> Python
> >>>> has not opened any port:
> >>>>
> >>>> Macintosh:~ az$ lsof -i -P | grep -i python
> >>>> Python    24119   az    8u  IPv6 0x3e524bc      0t0  TCP *:*
> >>>> (CLOSED)
> >>>>
> >>>> Any suggestions?
> >>>>
> >>>> Thanks,
> >>>> Albert
> >>>>
> >>>> _______________________________________________
> >>>> Eric mailing list
> >>>> Eric at riverbankcomputing.com
> >>>> http://www.riverbankcomputing.com/mailman/listinfo/eric
> >>>
> >>> --
> >>> Detlev Offenbach
> >>> detlev at die-offenbachs.de
> >
> > --
> > Detlev Offenbach
> > detlev at die-offenbachs.de



-- 
Detlev Offenbach
detlev at die-offenbachs.de


More information about the Eric mailing list