www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/12/04/20:35:05

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
To: cygwin AT cygwin DOT com
X-Injected-Via-Gmane: http://gmane.org/
Path: not-for-mail
From: Soren A <soren_andersen AT fastmail DOT fm>
Subject: Re: PATH
Date: Thu, 5 Dec 2002 01:32:28 +0000 (UTC)
Organization: Occasionally Sporadically
Lines: 59
Message-ID: <Xns92DAD15CBAFADsoren1Gmane@80.91.224.249>
References: <014a01c29be6$d18b5cf0$988501c1 AT elmo> <20021204151441 DOT GG26318 AT redhat DOT com>
NNTP-Posting-Host: ny-kenton2a-951.buf.adelphia.net
X-Trace: main.gmane.org 1039051948 32497 24.51.95.183 (5 Dec 2002 01:32:28 GMT)
X-Complaints-To: usenet AT main DOT gmane DOT org
NNTP-Posting-Date: Thu, 5 Dec 2002 01:32:28 +0000 (UTC)
User-Agent: Xnews/L5
X-Archive: encrypt

Christopher Faylor <cgf AT redhat DOT com> wrote around 04 Dec 2002 
news:20021204151441 DOT GG26318 AT redhat DOT com:

> On Wed, Dec 04, 2002 at 02:45:17PM -0800, Alan Larkin wrote:
>>I have a Makefile.mak which contains the rule
>>
>>Lexer.c: Lexer.l
>>
>>(using the implict rule for lexing).  When I try making it (by double
>>clicking) it complains that make cannot find a rule to make Lexer.l
>>needed by Lexer.c.  Lexer.l is of course in the working directory but
>>it doesnt seem to find it.  Ive added .: to the PATH all over the
>>place! /home/alan/.bash_profile (which now just looks like
>>
>>export PATH=$PATH:.
> 
> AFAIK, the PATH isn't used to find files in make.

I can conclusively confirm Chris' statement, which was worded a bit
tentatively: absolutely, PATH has nothing to do with where GNU 'make'
(or any other that I know of) looks for files. Nothing whatsoever. This
confusion over the basic concept of what PATH is for has come up before,
I can recall. 

Again, TTBOK there is no (credible) program or software system in
existance that uses $PATH (%PATH%) for *anything* except for finding
executables to run (including of course DLLs, which in the DozeWorld are
considered executables). 

> Given that you have mixed case in the above example, I'm guessing that 
you probably have
> an incorrect case in the actual filename, i.e., the file is actually
> called lExer.L or something like that.  If you do this:
> 
>   mv lexer.l foo; mv foo Lexer.l
> 
> you may be able to correctly set the filename case.

Probably 'make' shouldn't be treating targets on this platform as case-
sensitive. But this is a fairly esoteric issue and I don't know right off-
hand whether this could be the explanation. If one wanted an authoritative 
answer then I think the GNU 'make' List would be the place to go (can be 
read on Gmane BTW: www.gmane.org).

My thinking is that I would want to make sure that the cwd is really what 
you thing it is (OP). It seems possible, if unlikely, that 'make' is 
actually working in another dir than where the makefile and sources are 
located? The manner in which you (OP) are starting this process from a 
shortcut icon is non-standard and might have odd side-effects.

BTW, "VPATH" is a mechanism existing in GNU make for explicitly telling 
make where to look for targets that might need to be remade 
(prerequisites). Please `info make' (or 'man make').

   Soren A

-- 
Yes, it's really Sören, not Soren.




--
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/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019