List Info

Thread: RE: gdbserver 6.7.1 for mingw32ce connect to host gdb problem




RE: gdbserver 6.7.1 for mingw32ce connect to host gdb problem
user name
2007-12-16 17:11:43
Good suggestions. comments follow below.  

summary: pilot error on my part.  it turns out that
gdbserver.exe MUST be
launched like this
gdbserver :9999 /path/test

and must NOT be launched as I attempted previously:
gdbserver.exe 169.254.2.2:9999 \path\test.exe

thanks to your support this is now working.  I even tested
out 

ddd --debugger arm-wince-mingw32ce-gdb test.exe
target remote 169.254.2.1:9999
the session seems very responsive.

interesting test 
b main
c
p argc
$1 = 1
p argv[0]
$2 = 0x260930 "\pathtest.exe"

so gdb although invoked with single forward slash,converts
to double back
slash.

/steverino2  

-----Original Message-----
From: gdb-ownersourceware.org [mailto:gdb-ownersourceware.org] On Behalf
Of Pedro Alves
Sent: Sunday, December 16, 2007 8:41 AM
To: onramp123yahoo.com
Cc: gdbsourceware.org
Subject: Re: gdbserver 6.7.1 for mingw32ce connect to host
gdb problem

Steve DeLaney wrote:

> first I noticed that gdbserver needs a command line
like this
> 
> gdbserver.exe 169.254.2.2:9999 \path\test.exe
> 
> without path to .exe it just exits with a usage message
this is due to 
> the fact that wince doesn't define a default (current)
directory like 
> '.'
> 

1) gdbserver currently ignores host part in HOST:PORT, so
you can
    just use '$GDBSERVER :$PORT $PATH'.

2) There is *no* notion of current directory on Windows CE. 
On
    WinCE, every path *must* be absolute.  (There is an
    hardcoded $PATH, that looks of executables in Windows
and  )

    Gdbserver allows you to use forward slashes too:
    gdbserver.exe :9999 /path/test.exe

    And skip the .exe extension:
    gdbserver.exe :9999 /path/test


> Test over RNDIS and WLAN with the same results. 
gdbserver times out 
> after about 8 seconds
> 

I'm not sure what you're seeing.  You should see something
like
this:

> gdbserver :9999 main
Process main created; pid=-1226757750
Listening on port 9999

[s] yes, I agree this is what I expected just other embedded
versions of
gdbserver.  in this case, when launched from powertools CMD
shell (
gdbserver.exe :9999 /path/test) gdbserver just starts, waits
approx 12
seconds, then returns to command prompt.  but there are no
messages on
stdout. 


 > I wondered about __MINGW32CE__ asserted in
> the make CFLAGS
> 

Can you be more specific?   (__MINGW32CE__ is automatically
defined by the mingw32ce compiler.)
[s] gotcha.  yes I confirmed this with gdb -v
I can see now that __MINGW32CE__ options are enabled in the
gdbserver build.

> any ideas what might be going on, or how best to trace
this?

Looks like something is not 100% right in your tcp/ip
connection.
Can you ping the host from the device ?
[s] yes on RNDIS ping 169.254.2.1, on WLAN at 192.168.3.118

Is there any firewalling involved ?
[s] No, all inside firewall on single subnet.  RNDIS
emulates a network
connection so it is point-to-point over USB, no?

Can you start gdbserver listening on 9999, and telnet it
(to
remove gdb from the picture) with 'telnet $ip 9999' ?
[s] this did not work (telnet client gets "connection
refused"  So gdbserver
is not listening on the port

-- 
Pedro Alves



Re: gdbserver 6.7.1 for mingw32ce connect to host gdb problem
country flaguser name
Portugal
2007-12-16 17:48:21
Steve DeLaney wrote:
> Good suggestions. comments follow below.  
> 
> summary: pilot error on my part.  it turns out that
gdbserver.exe MUST be
> launched like this
> gdbserver :9999 /path/test
> 
> and must NOT be launched as I attempted previously:
> gdbserver.exe 169.254.2.2:9999 \path\test.exe
> 

Well, it depends on what kind of "shell" you use
to
invoke the command.  I was assuming you were
invoking from some remote RAPI tool from some shell
that needed the escaping, but since you seem to be
using MSFT's cmd.exe, you have to use
single back-slashes:
gdbserver.exe 169.254.2.2:9999 pathtest.exe

If that's the case, this is not a gdbserver problem.
If it's something else, it could be a bug.

> interesting test 
> b main
> c
> p argc
> $1 = 1
> p argv[0]
> $2 = 0x260930 "\pathtest.exe"
> 
> so gdb although invoked with single forward
slash,converts to double back
> slash.
> 

Actually, it's converted into a single back slash, since
that's
what the CreateProcess call used to launch the process
expects.
The double back slash is shown because '' is the escape
char.  I
guess you have a typo in your example.

Glad it's working now.

-- 
Pedro Alves


[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )