Bash v4.0 does not respect $PATH

Neil.Mowbray@calgacus.com Neil.Mowbray@calgacus.com
Tue Dec 29 21:21:00 GMT 2009


Folks,

I need associative arrays so I got the bash 4.0 source, compiled it under
cygwin
and installed it in /usr/local/bin.

I have ActiveState perl installed in /opt/perl which preceeds
/usr/local/bin:/bin:/usr/bin
on my path.  Using bash 4.0, 'which' says I should get ActiveState perl, but
actual
execution gives cygwin perl in /bin

$ for i in $(echo $PATH | sed -r -e "s/:/ /g"); do echo $i; done
	/opt/site/bin
	/opt/ms-vs-10.0/VC/bin
	/opt/perl/bin
	/usr/local/bin
	/bin	
	/usr/bin
	...

$ which perl
	/opt/perl/bin/perl

But

$ perl --version
	This is perl, v5.10.1 (*) built for i686-cygwin-thread-muli-64int
	(with 12 registered patches, see perl -V for more detail)
	...

If I switch to bash 3.x in /bin things work as expected.

$ /bin/bash

$ which perl
	/opt/perl/bin/perl

$ perl --version
	This is perl, v5.10.1 built for MSWin32-x86-multi-thread
	...

How can I fix bash 4.0 path problems?

Regards, Neil


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list