Subject: Re: cygwin bash groks PATH wrong
From: Bob McGowan <[email-masked]>
To: PETER JOHN CORDES <[email-masked]>
Cc: [email-masked], [email-masked]
Date: Fri, 14 Jan 2000 09:27:28 -0800

Peter,

I don't think this can qualify as a bug.  Though relative paths don't
really make sense in either the DOS/Windows world or the UNIX world, you
can change your path to include them.  I think this is true also on
DOS/Windows, with the added issue of drives and their current directory
concepts.  This means for DOS I could have a directory with no drive
letter, so it is only valid when the drive it is on is current.

Do you have any control over the local computer you are running bash
on?  You may be able to effect some repair in the Control
Panel->System's environment tab.  If not, you should have complete
control over your personal setup of Cygwin and should be able to either
set the PATH exactly as you like in your .profile or .bashrc (i.e. don't
put a $PATH on the right side), or even run the existing DOS/Windows
path through sed or awk to munge it up the way you need it.

Bob

PETER JOHN CORDES wrote:
> 
>  I've got GNU bash, version 2.02.1(2)-release (i586-pc-cygwin32) running
> on Micros~1 WinNT 4.0 (service pack 5), on x86 hardware.  (Actually, it's
> in a computer lab at Dal.  I've got Debian GNU/Linux potato on my own
> computer :)
> 
>  (I don't know if this bug still exists in the current version or has
> already been reported. Sorry.)
> 
>  When I invoke bash with c:jdk1.2.2\lib in the DOS %PATH%, it transforms
> it into //cjdk1.2.2/lib.  (note that having c:jdk... in your DOS path
> doesn't actually work unless cwd=\.  I'm not the admin of the NT
> computers (thank God:) ... )
> 
>  The bad part about having //cjdk1.2.2/lib in the PATH is that trying to
> search it for command completion makes it wait for NT to timeout looking
> for the network name, or something.  Anyway, bash freezes for 30 seconds
> and nothing you can do will unfreeze it sooner (^C, etc.).  This also
> happens when your run a command that isn't in the PATH before the broken
> entry.
> 
>  It seems to me that a %PATH% entry of c:foo is fundamentally incompatible
> with the Unix way of doing things, since c:foo is \foo relative to
> whatever the current directory on drive C is.  However, Unix doesn't have
> a cwd for each drive, so ./foo in your $PATH is different.  I don't know
> what the entry _should_ be tranformed to, but anything would be better
> than //cfoo!
> 
>  Thanks for the great software, I hope you can make it better :)
> 
> #define X(x,y) x##y
> Peter Cordes ;  e-mail: X([email-masked]. , dal.ca)
> 
> --
> Want to unsubscribe from this list?
> Send a message to [email-masked]

-- 
Bob McGowan
Staff Software Quality Engineer
VERITAS Software
[email-masked]

--
Want to unsubscribe from this list?
Send a message to [email-masked]