From: Nikolay Molchanov <Nikolay.Molchanov@Sun.COM>
To: Pedro Alves <pedro_alves@portugalmail.pt>
Cc: gdb@sourceware.org
Subject: Re: Why gdb 6.5 prints fullname in /cygdrive/... format on Windows?
Date: Wed, 09 Aug 2006 16:49:00 -0000 [thread overview]
Message-ID: <44DA11F8.9000301@sun.com> (raw)
In-Reply-To: <44D99FBE.3070805@portugalmail.pt>
Pedro,
>>> Eli Zaretskii wrote:
>>> In general, if you want to avoid such problems, you should be using a
>>> coherent set of tools. Which in practice means that a Cygwin build
>>> of GDB should be used with Cygwin front ends and other programs. If
>>> your front end cannot be built with Cygwin, you might consider using
>>> the MinGW GCC and GDB instead, which are native Windows executables
>>> and understand Windows-style d:/foo file names.
>>>
>>>
>> Yes, we will try to support these compilers as well in future, but
>> our primary
>> target is to provide a free open source IDE for java and C/C++
>> developers,
>> and this IDE shall work with Cygwin compilers on Windows, and with many
>> other compilers on Linux, Windows and Solaris. This IDE is based on
>> Netbeans
>> (http://netbeans.org), which is a Java application, and it is very
>> inconvenient to
>> translate file names from Cygwin format to Windows format in Java code.
>> For gdb it takes a few microseconds to translate a file name. We have to
>> spend 250-400 milliseconds to execute external binary "cygpath -m ..."
>> and to get translated name from its output. We can try to cache the
>> directory names, but it is not correct in general case because mount
>> points can be changed, and there is no way to notice such change
>> from Java application. So, if it is possible to provide an option to
>> print fullname in Windows format, we will very much appreciate it.
>>
>
> Hummm, how about?:
> You could avoid the external executable loading time everytime you
> want to convert a path, by keeping one "cygpath -m -f -" loaded, and
> feeding it the pathnames to stdin / getting result from stdout.
>
Thank you, I'll try this solution. In general we are trying to balance
between
complexity and performance in such cases :-) Dialog seems to be a more
complicated solution, because we don't know what delays can be there,
and what to do in case of timeout (restart cygpath? what if it hangs
again?).
Also dialog is async, which means we need several threads to "talk" (at
least
2 threads for stdin and stdout, and probably one more for stderr).
BTW, thank you for the suggestion to use "cygpath -m /..." to translate
file names! I already implemented it, and it works just fine (though the
delays are really visible :-)
Thanks,
Nik
next prev parent reply other threads:[~2006-08-09 16:49 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-08-08 6:45 Why gdb 6.5 prints fullname in /cygdrive/... format om Windows? Nikolay Molchanov
2006-08-08 10:36 ` Nick Roberts
2006-08-08 13:18 ` Daniel Jacobowitz
2006-08-08 15:29 ` Christopher Faylor
2006-08-08 17:31 ` Bob Rossi
2006-08-08 17:36 ` Daniel Jacobowitz
2006-08-09 9:17 ` Andrew STUBBS
2006-08-09 13:42 ` Daniel Jacobowitz
2006-08-09 14:38 ` Christopher Faylor
2006-08-09 18:10 ` Bob Rossi
2006-08-09 18:12 ` Daniel Jacobowitz
2006-08-09 18:18 ` Joel Brobecker
2006-08-09 18:23 ` Bob Rossi
2006-08-09 21:28 ` Christopher Faylor
2006-08-08 17:36 ` Joel Brobecker
2006-08-08 19:24 ` Why gdb 6.5 prints fullname in /cygdrive/... format on Windows? Nikolay Molchanov
2006-08-08 19:27 ` Daniel Jacobowitz
2006-08-08 20:01 ` Joel Brobecker
2006-08-08 20:17 ` Pedro Alves
2006-08-08 21:07 ` Christopher Faylor
2006-08-08 18:53 ` Why gdb 6.5 prints fullname in /cygdrive/... format om Windows? Eli Zaretskii
2006-08-08 19:33 ` Nikolay Molchanov
[not found] ` <44D8E404.5050407@Sun.COM>
2006-08-08 21:31 ` Eli Zaretskii
2006-08-09 7:23 ` Nikolay Molchanov
2006-08-09 8:41 ` Pedro Alves
2006-08-09 16:49 ` Nikolay Molchanov [this message]
2006-08-09 17:40 ` Eli Zaretskii
2006-08-10 6:22 ` How to set a breakpoint in file, which name has spaces? Nikolay Molchanov
2006-08-10 12:58 ` Daniel Jacobowitz
2006-08-10 16:36 ` Nikolay Molchanov
2006-08-10 17:51 ` Daniel Jacobowitz
2006-08-11 5:27 ` Nikolay Molchanov
2006-08-11 12:55 ` Eli Zaretskii
2006-08-11 13:48 ` Daniel Jacobowitz
2006-08-11 16:17 ` Eli Zaretskii
2006-08-11 20:13 ` Joel Brobecker
2006-08-13 18:02 ` Daniel Jacobowitz
2006-08-13 20:33 ` Joel Brobecker
2006-08-12 11:44 ` Mark Kettenis
2006-08-12 12:31 ` Andreas Schwab
2006-08-12 14:22 ` Mark Kettenis
2006-08-12 14:20 ` Eli Zaretskii
2006-08-12 14:46 ` Mark Kettenis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=44DA11F8.9000301@sun.com \
--to=nikolay.molchanov@sun.com \
--cc=gdb@sourceware.org \
--cc=pedro_alves@portugalmail.pt \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox