Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: <3B97D589.9040308@ece.gatech.edu> Date: Thu, 06 Sep 2001 15:59:05 -0400 From: Charles Wilson User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.2) Gecko/20010713 X-Accept-Language: en-us MIME-Version: 1.0 To: Christopher Murray CC: cygwin AT cygwin DOT com Subject: Re: Some questions concerning perl and sh References: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Christopher Murray wrote: > 1) What is it about Activestate perl that prevents one from > accessing /usr/bin/perl ^^^^^^^^^^^^^ this is a cygwin path > -w (or c:/cygwin/usr/bin/perl, or ^^^^^^^^^^^^^^^^^^^^^^ so us this (*) > /cygdrive/c/usr/bin/perl) in the shebang line of the script when ^^^^^^^^^^^^^^^^^^^^^^^^ and this. Active state perl CANNOT use cygwin paths -- only cygwin programs understand them. (*) This LOOKS like a native path -- but it isn't. /usr/bin is actually an empty directory. Within cygwin, /bin is mounted ONTO /usr/bin. But, if you use explorer, you'll see that the programs and files are ACTUALLY in c:/cygwin/bin. > the script is not in the cwd? Is there any way around this (and > still use Activestate perl)? > > 2) What is it about cygwin-ported perl that it must know about sh > when running "system"? Where is sh.exe? Is creating a link to > bash the only way to resolve this? On unix/perl, "system" means "use the shell to execute the following command". Thus, you need a shell. (Also, you should install the ash package; it provides /bin/sh. --Chuck -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/