This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]


Okay, fair enough. Its not related to PATH. Its also not really a make
problem. Running make from the command line it works. Its when I try run it
through an action as described in my original message

C:\Cygwin\bin\bash.exe --login -cvx +e "TEMP=$(mktemp); $(make -f $0 &>
$TEMP) || less $TEMP; rm $TEMP" %1

it dont work. So I suppose its just a question of how to launch bash
properly? Any suggestions on how to modify the above so that it works.

(also its not related to filename case)

----- Original Message -----
From: "Soren A" <>
To: <>
Sent: Wednesday, December 04, 2002 5:32 PM
Subject: Re: PATH

> Christopher Faylor <> wrote around 04 Dec 2002
> > 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:
> 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:
> Bug reporting:
> Documentation:
> FAQ:         

Unsubscribe info:
Bug reporting:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]