Skip to main content



      Home
Home » Language IDEs » C / C++ IDE (CDT) » Debug target pathname
Debug target pathname [message #33448] Wed, 22 May 2002 03:01 Go to next message
Eclipse UserFriend
Having suffer a problem debugging under Windows with Cygwin installed I
decided to dig a bit further. I loaded the gdbpicl source and had a look at
the pathname generation code. If this is actually tageted at Unix then I
believe the convention should be to escape control and non-printing
charaters in the pathname, ie. the path "/a/b c/d" should be modified to
"a/b\ c/c" according to Unix conventions. This would certainly fix the
problem for me windows and make things much more tranparent (like you
wouldn't have to worry about where your source was in a directory
structure).

In trying to test this mod I'm confused about how the debug inspector works.
It keeps giving me a popup to the effect '... cannot resolve...' name if the
name is anything other than this or one declared in the method. Have I
missed a setting somewhere?

Regarding the pathname stuff, I think this change should be made. For Unix
it's neutral, for windows it's a real bonus.

Thanx,
Al
Re: Debug target pathname [message #33681 is a reply to message #33448] Wed, 22 May 2002 14:53 Go to previous messageGo to next message
Eclipse UserFriend
Thanks for looking into this problem.
Can you give me more information about the error message you were getting
when you tried to test the modification? Maybe I can help figure out what
was going on.


Samantha

Allan Clearwaters wrote:

> Having suffer a problem debugging under Windows with Cygwin installed I
> decided to dig a bit further. I loaded the gdbpicl source and had a look at
> the pathname generation code. If this is actually tageted at Unix then I
> believe the convention should be to escape control and non-printing
> charaters in the pathname, ie. the path "/a/b c/d" should be modified to
> "a/b\ c/c" according to Unix conventions. This would certainly fix the
> problem for me windows and make things much more tranparent (like you
> wouldn't have to worry about where your source was in a directory
> structure).

> In trying to test this mod I'm confused about how the debug inspector works.
> It keeps giving me a popup to the effect '... cannot resolve...' name if the
> name is anything other than this or one declared in the method. Have I
> missed a setting somewhere?

> Regarding the pathname stuff, I think this change should be made. For Unix
> it's neutral, for windows it's a real bonus.

> Thanx,
> Al
Re: Debug target pathname [message #33748 is a reply to message #33448] Wed, 22 May 2002 16:18 Go to previous messageGo to next message
Eclipse UserFriend
Hi Allan,

Could you also let me know what you have modified for this problem?
I would like to take a look at it and test it out as well.

Thanks
Samantha

Allan Clearwaters wrote:

> Having suffer a problem debugging under Windows with Cygwin installed I
> decided to dig a bit further. I loaded the gdbpicl source and had a look at
> the pathname generation code. If this is actually tageted at Unix then I
> believe the convention should be to escape control and non-printing
> charaters in the pathname, ie. the path "/a/b c/d" should be modified to
> "a/b\ c/c" according to Unix conventions. This would certainly fix the
> problem for me windows and make things much more tranparent (like you
> wouldn't have to worry about where your source was in a directory
> structure).

> In trying to test this mod I'm confused about how the debug inspector works.
> It keeps giving me a popup to the effect '... cannot resolve...' name if the
> name is anything other than this or one declared in the method. Have I
> missed a setting somewhere?

> Regarding the pathname stuff, I think this change should be made. For Unix
> it's neutral, for windows it's a real bonus.

> Thanx,
> Al
Re: Debug target pathname [message #34273 is a reply to message #33748] Mon, 27 May 2002 04:29 Go to previous messageGo to next message
Eclipse UserFriend
Samantha,

I've fixed this problem, ie. I now have a version of CDT that properly
handles pathnames with embedded spaces on Windows and cygwin gdb. The
changes (at least as I've done them) are to add a static method to Gdb that
does the work of escaping the filename string and then use this method to
modify the path passed to GetDebugSession.setStartProgramNameString(). I am
now a happy puppy. If you wish to see these changes please contact me at
allan@object-forge.com and I'll ship you the modified gdbPicl package.

Thanx,
Al

"Samantha Chan" <chanskw@ca.ibm.com> wrote in message
news:acgufg$khg$1@rogue.oti.com...
> Hi Allan,
>
> Could you also let me know what you have modified for this problem?
> I would like to take a look at it and test it out as well.
>
> Thanks
> Samantha
>
> Allan Clearwaters wrote:
>
> > Having suffer a problem debugging under Windows with Cygwin installed I
> > decided to dig a bit further. I loaded the gdbpicl source and had a
look at
> > the pathname generation code. If this is actually tageted at Unix then
I
> > believe the convention should be to escape control and non-printing
> > charaters in the pathname, ie. the path "/a/b c/d" should be modified to
> > "a/b\ c/c" according to Unix conventions. This would certainly fix the
> > problem for me windows and make things much more tranparent (like you
> > wouldn't have to worry about where your source was in a directory
> > structure).
>
> > In trying to test this mod I'm confused about how the debug inspector
works.
> > It keeps giving me a popup to the effect '... cannot resolve...' name if
the
> > name is anything other than this or one declared in the method. Have I
> > missed a setting somewhere?
>
> > Regarding the pathname stuff, I think this change should be made. For
Unix
> > it's neutral, for windows it's a real bonus.
>
> > Thanx,
> > Al
>
>
>
>
>
Re: Debug target pathname [message #34305 is a reply to message #34273] Mon, 27 May 2002 17:01 Go to previous messageGo to next message
Eclipse UserFriend
Hi Allan,

Thanks for letting me know.
I have also put in a fix for this problem.
Instead of just escaping spaces in the filename, I have included other
special characters to escape as well. My fix is in
GdbDebugSession.setStartProgramName.

In addition to spaces, following characters are escaped:
~`!@#$%^&()+={}[];,\/:*?"<>|

I have checked in the code in CVS. You can get the fix by checking out
the most recent copy of GdbDebugSession.java from CVS.

I hope it solves your problem running GDBPicl on Windows. Let me know if
you experience any problem.

Thanks,

Samantha

Allan Clearwaters wrote:

> Samantha,

> I've fixed this problem, ie. I now have a version of CDT that properly
> handles pathnames with embedded spaces on Windows and cygwin gdb. The
> changes (at least as I've done them) are to add a static method to Gdb that
> does the work of escaping the filename string and then use this method to
> modify the path passed to GetDebugSession.setStartProgramNameString(). I am
> now a happy puppy. If you wish to see these changes please contact me at
> allan@object-forge.com and I'll ship you the modified gdbPicl package.

> Thanx,
> Al

> "Samantha Chan" <chanskw@ca.ibm.com> wrote in message
> news:acgufg$khg$1@rogue.oti.com...
> > Hi Allan,
> >
> > Could you also let me know what you have modified for this problem?
> > I would like to take a look at it and test it out as well.
> >
> > Thanks
> > Samantha
> >
> > Allan Clearwaters wrote:
> >
> > > Having suffer a problem debugging under Windows with Cygwin installed I
> > > decided to dig a bit further. I loaded the gdbpicl source and had a
> look at
> > > the pathname generation code. If this is actually tageted at Unix then
> I
> > > believe the convention should be to escape control and non-printing
> > > charaters in the pathname, ie. the path "/a/b c/d" should be modified to
> > > "a/b\ c/c" according to Unix conventions. This would certainly fix the
> > > problem for me windows and make things much more tranparent (like you
> > > wouldn't have to worry about where your source was in a directory
> > > structure).
> >
> > > In trying to test this mod I'm confused about how the debug inspector
> works.
> > > It keeps giving me a popup to the effect '... cannot resolve...' name if
> the
> > > name is anything other than this or one declared in the method. Have I
> > > missed a setting somewhere?
> >
> > > Regarding the pathname stuff, I think this change should be made. For
> Unix
> > > it's neutral, for windows it's a real bonus.
> >
> > > Thanx,
> > > Al
> >
> >
> >
> >
> >
Re: Debug target pathname [message #34443 is a reply to message #34305] Tue, 28 May 2002 08:49 Go to previous messageGo to next message
Eclipse UserFriend
Samantha,

Had a look - 2 comments:

1) The interpretation of the '\' char in the input string is ambiguous.
You can either treat it as a character to be escaped (as you have) or assume
the caller has already constructed a string with an escaped character in it.
In the latter case your code adds a newly escaped '\' to the string. I not
sure this what you want. I'm inclined to consider a '\' char in the input
string as being there on purpose and leave the next character alone.

2) I implemented a method rather than simply embed the code since this is a
generally useful utility. That's a matter of taste.

I'd be inclined to change as follows:
private String escapeChars=" ~`!@#$%^&()+={}[];,/:*?\"<>|";

StringBuffer buffer = new StringBuffer();

char[] mainProg = _mainProgram.toCharArray();

boolean escaped = false;


for (int i=0; i<mainProg.length; i++){

if (escapeChars.indexOf(mainProg[i]) >= 0 && !escaped ){

buffer.append('\\');

}

eacaped = (esacped)? false : (mainProg[i]=='\\' );

buffer.append(mainProg[i]);

}


"Samantha Chan" <chanskw@ca.ibm.com> wrote in message
news:acu6r3$6uq$1@rogue.oti.com...
> Hi Allan,
>
> Thanks for letting me know.
> I have also put in a fix for this problem.
> Instead of just escaping spaces in the filename, I have included other
> special characters to escape as well. My fix is in
> GdbDebugSession.setStartProgramName.
>
> In addition to spaces, following characters are escaped:
> ~`!@#$%^&()+={}[];,\/:*?"<>|
>
> I have checked in the code in CVS. You can get the fix by checking out
> the most recent copy of GdbDebugSession.java from CVS.
>
> I hope it solves your problem running GDBPicl on Windows. Let me know if
> you experience any problem.
>
> Thanks,
>
> Samantha
>
> Allan Clearwaters wrote:
>
> > Samantha,
>
> > I've fixed this problem, ie. I now have a version of CDT that properly
> > handles pathnames with embedded spaces on Windows and cygwin gdb. The
> > changes (at least as I've done them) are to add a static method to Gdb
that
> > does the work of escaping the filename string and then use this method
to
> > modify the path passed to GetDebugSession.setStartProgramNameString().
I am
> > now a happy puppy. If you wish to see these changes please contact me
at
> > allan@object-forge.com and I'll ship you the modified gdbPicl package.
>
> > Thanx,
> > Al
>
> > "Samantha Chan" <chanskw@ca.ibm.com> wrote in message
> > news:acgufg$khg$1@rogue.oti.com...
> > > Hi Allan,
> > >
> > > Could you also let me know what you have modified for this problem?
> > > I would like to take a look at it and test it out as well.
> > >
> > > Thanks
> > > Samantha
> > >
> > > Allan Clearwaters wrote:
> > >
> > > > Having suffer a problem debugging under Windows with Cygwin
installed I
> > > > decided to dig a bit further. I loaded the gdbpicl source and had a
> > look at
> > > > the pathname generation code. If this is actually tageted at Unix
then
> > I
> > > > believe the convention should be to escape control and non-printing
> > > > charaters in the pathname, ie. the path "/a/b c/d" should be
modified to
> > > > "a/b\ c/c" according to Unix conventions. This would certainly fix
the
> > > > problem for me windows and make things much more tranparent (like
you
> > > > wouldn't have to worry about where your source was in a directory
> > > > structure).
> > >
> > > > In trying to test this mod I'm confused about how the debug
inspector
> > works.
> > > > It keeps giving me a popup to the effect '... cannot resolve...'
name if
> > the
> > > > name is anything other than this or one declared in the method.
Have I
> > > > missed a setting somewhere?
> > >
> > > > Regarding the pathname stuff, I think this change should be made.
For
> > Unix
> > > > it's neutral, for windows it's a real bonus.
> > >
> > > > Thanx,
> > > > Al
> > >
> > >
> > >
> > >
> > >
>
>
>
>
>
Re: Debug target pathname [message #35090 is a reply to message #34443] Thu, 30 May 2002 16:30 Go to previous message
Eclipse UserFriend
Hi Allan,

I agree about the ambiguity of '\'. I will put in your recommended
changes.

Thanks
Samantha

Allan Clearwaters wrote:

> Samantha,

> Had a look - 2 comments:

> 1) The interpretation of the '\' char in the input string is ambiguous.
> You can either treat it as a character to be escaped (as you have) or assume
> the caller has already constructed a string with an escaped character in it.
> In the latter case your code adds a newly escaped '\' to the string. I not
> sure this what you want. I'm inclined to consider a '\' char in the input
> string as being there on purpose and leave the next character alone.

> 2) I implemented a method rather than simply embed the code since this is a
> generally useful utility. That's a matter of taste.

> I'd be inclined to change as follows:
> private String escapeChars=" ~`!@#$%^&()+={}[];,/:*?\"<>|";

> StringBuffer buffer = new StringBuffer();

> char[] mainProg = _mainProgram.toCharArray();

> boolean escaped = false;


> for (int i=0; i<mainProg.length; i++){

> if (escapeChars.indexOf(mainProg[i]) >= 0 && !escaped ){

> buffer.append('\\');

> }

> eacaped = (esacped)? false : (mainProg[i]=='\\' );

> buffer.append(mainProg[i]);

> }


> "Samantha Chan" <chanskw@ca.ibm.com> wrote in message
> news:acu6r3$6uq$1@rogue.oti.com...
> > Hi Allan,
> >
> > Thanks for letting me know.
> > I have also put in a fix for this problem.
> > Instead of just escaping spaces in the filename, I have included other
> > special characters to escape as well. My fix is in
> > GdbDebugSession.setStartProgramName.
> >
> > In addition to spaces, following characters are escaped:
> > ~`!@#$%^&()+={}[];,\/:*?"<>|
> >
> > I have checked in the code in CVS. You can get the fix by checking out
> > the most recent copy of GdbDebugSession.java from CVS.
> >
> > I hope it solves your problem running GDBPicl on Windows. Let me know if
> > you experience any problem.
> >
> > Thanks,
> >
> > Samantha
> >
> > Allan Clearwaters wrote:
> >
> > > Samantha,
> >
> > > I've fixed this problem, ie. I now have a version of CDT that properly
> > > handles pathnames with embedded spaces on Windows and cygwin gdb. The
> > > changes (at least as I've done them) are to add a static method to Gdb
> that
> > > does the work of escaping the filename string and then use this method
> to
> > > modify the path passed to GetDebugSession.setStartProgramNameString().
> I am
> > > now a happy puppy. If you wish to see these changes please contact me
> at
> > > allan@object-forge.com and I'll ship you the modified gdbPicl package.
> >
> > > Thanx,
> > > Al
> >
> > > "Samantha Chan" <chanskw@ca.ibm.com> wrote in message
> > > news:acgufg$khg$1@rogue.oti.com...
> > > > Hi Allan,
> > > >
> > > > Could you also let me know what you have modified for this problem?
> > > > I would like to take a look at it and test it out as well.
> > > >
> > > > Thanks
> > > > Samantha
> > > >
> > > > Allan Clearwaters wrote:
> > > >
> > > > > Having suffer a problem debugging under Windows with Cygwin
> installed I
> > > > > decided to dig a bit further. I loaded the gdbpicl source and had a
> > > look at
> > > > > the pathname generation code. If this is actually tageted at Unix
> then
> > > I
> > > > > believe the convention should be to escape control and non-printing
> > > > > charaters in the pathname, ie. the path "/a/b c/d" should be
> modified to
> > > > > "a/b\ c/c" according to Unix conventions. This would certainly fix
> the
> > > > > problem for me windows and make things much more tranparent (like
> you
> > > > > wouldn't have to worry about where your source was in a directory
> > > > > structure).
> > > >
> > > > > In trying to test this mod I'm confused about how the debug
> inspector
> > > works.
> > > > > It keeps giving me a popup to the effect '... cannot resolve...'
> name if
> > > the
> > > > > name is anything other than this or one declared in the method.
> Have I
> > > > > missed a setting somewhere?
> > > >
> > > > > Regarding the pathname stuff, I think this change should be made.
> For
> > > Unix
> > > > > it's neutral, for windows it's a real bonus.
> > > >
> > > > > Thanx,
> > > > > Al
> > > >
> > > >
> > > >
> > > >
> > > >
> >
> >
> >
> >
> >
Previous Topic:New document available describing how to build\run\debug the CDT within Eclipse
Next Topic:Configuring an LPEX parser programmatically
Goto Forum:
  


Current Time: Thu Mar 13 13:55:09 EDT 2025

Powered by FUDForum. Page generated in 0.04359 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top