X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org To: cygwin AT cygwin DOT com From: Andrew DeFaria Subject: Re: Changing HOME for PERL Date: Thu, 27 Aug 2009 08:44:38 -0700 Lines: 83 Message-ID: References: <4A959537 DOT 7020900 AT bopp DOT net> <4A95AA6A DOT 9010909 AT bopp DOT net> <4A9697B2 DOT 6050101 AT bopp DOT net> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit User-Agent: Thunderbird 2.0.0.23 (X11/20090817) In-Reply-To: X-Stationery: 0.4.10 X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Dexter_Michael AT emc DOT com wrote: > Yes that is SolidState Perl on the C drive. Ah.... That'd be ActiveState, not SolidState. > /usr/bin is in the front. That makes no sense but perhaps it's a clue. As Jeremy mentioned, which takes each PATH component and checks to see if there's a executable of that name in that path component. If /usr/bin is in the front then theoretically it should see /usr/bin/perl and say "Ah ha! That's where that is" and report back /usr/bin/perl. > dextem AT USENDEXTEML1C /usr/bin/perl > $ echo $PATH > /usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/Program > Files/EMC/Centera/4_0/GlobalServices/lib:/cygdrive/c/Program > Files/EMC/Centera/4_0/GlobalService > s/bin:/cygdrive/c/PERL/BIN/:/cygdrive/c/WINNT/SYSTEM32:/cygdrive/c/WINNT > :/cygdrive/c/WINNT/SYSTEM32/WBEM:/cygdrive/c/JAVASOFT/JRE/1.4.2_06/BIN:/ > cygdrive/c/JAVAS > OFT/JDK/1.4.2_06/BIN:/cygdrive/c/RATIONAL/CLEARCASE/ETC:/cygdrive/c/RATI > ONAL/CLEARCASE/ETC/UTILS:/cygdrive/c/RATIONAL/ClearQuest:/cygdrive/c/Mic > rosoftVisualStud > io.NET2003/Common7/IDE:/cygdrive/c/MicrosoftVisualStudio.NET2003/Vc7/BIN > :/cygdrive/c/MicrosoftVisualStudio.NET2003/Common7/TOOLS:/cygdrive/c/Mic > rosoftVisualStud > io.NET2003/Common7/TOOLS/bin/prerelease:/cygdrive/c/MicrosoftVisualStudi > o.NET2003/Common7/TOOLS/bin:/cygdrive/c/MicrosoftVisualStudio.NET2003/SD > K/v1.1/bin:/cygd > rive/c/WINNT/Microsoft.NET/Framework/v1.1.4322:/cygdrive/c/WINNT/SYSTEM: > /cygdrive/c/ORACLE/92/bin:/cygdrive/c/oracle/jre/1.1.7/bin:/cygdrive/c/M > icrosoftPlatform > SDK/Bin:/cygdrive/c/MicrosoftPlatformSDK/Bin/winnt:/cygdrive/c/Program > Files/Rational/ClearCase/bin:/cygdrive/c/Program > Files/Rational/ClearCase/etc:/cygdrive/c > /Program > Files/Rational/ClearCase/etc/utils:/cygdrive/c/WINNT/system32/WindowsPow > erShell/v1.0:/cygdrive/c/Program > Files/Rational/common:/cygdrive/c/Program File > s/EMC/Centera/4_0/GlobalServices/JCenteraVerify:/cygdrive/c/Program > Files/Common Files/Roxio Shared/9.0/DLLShared/:"C:/Program Files/Common > Files/EMC":/cygdrive > /c/PROGRA~1/COMMON~1/EMC:/cygdrive/c/Program Files/Support > Tools/:/cygdrive/c/Program Files/Common Files/Roxio > Shared/DLLShared/:/cygdrive/c/Program Files/Quick > Time/QTSystem/:/cygdrive/c/Program Files/Windows > Imaging/:/cygdrive/c/Program Files/IDM Computer > Solutions/UltraEdit/:/cygdrive/c/Program Files/IDM Computer Sol > utions/UltraCompare/:/usr/lib/lapack My god man that's the most polluted PATH I've seen yet! You have some duplication and a lot of unnecessary stuff (I mean really, does Roxio need to be in there?) I see you're using Clearcase - good boy! :-) But you have it listed several times. When you get spare time you may wish to clean that up. I tend to keep Windows paths Windows like (e.g. "C:/Program Files/Rational/Clearcase/bin") and Posix paths Posix like (i.e. /usr/bin). This cuts down on PATH length as /cygdrive/c is much longer than C:/. > dextem AT USENDEXTEML1C /usr/bin/perl What's this?!? You're in the /usr/bin/perl directory? There isn't any /usr/bin/perl directly?!? Or there shouldn't be! > $ /usr/bin/perl.exe -de 1 > > Loading DB routines from perl5db.pl version 1.28 > Editor support available. > > Enter h or `h h' for help, or `man perldebug' for more help. > > main::(-e:1): 1 > DB<1> q Actually I said /usr/bin/perl -de 1 not /usr/bin/perl.exe -de 1. Your shebang line doesn's say /usr/bin/perl.exe does it? Maybe exec(1) is getting confused between /usr/bin/perl.exe and /usr/bin/perl the directory? Note that executables, by Windows nature, end in .exe but Unix executables don't. So in order to avoid the ugliness, confusion and incompatibility of having to do ls.exe and rm.exe, etc. Cygwin treats ls as ls.exe. Likewise perl as perl.exe. However if exec(1) find that /usr/bin/perl exists in the filesystem as a directory, perhaps it tries to run that or says "Well that's not executable so let me look onward". If you have a /usr/bin/perl directory remove it and try again. -- Andrew DeFaria Future historians will be able to study at the Gerald Ford Library; the Jimmy Carter Library; the Ronald Reagan Library and the Bill Clinton Adult Bookstore. -- 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