[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 19990305: netCDF make failure on SGI system



>To: address@hidden
>From: graham campbell <address@hidden>
>Subject: make failure on SGI system
>Organization: BNL
>Keywords: 199903051807.LAA13374 netCDF flex

Hi Graham,

> In making ncgen there is a reference to flex. We have a lex, but no
> flex. I am attaching some logs. I modified the makefile to use lex and
> it completes and make test works.

We were aware of this, but users should not need flex or lex to build
and install the netCDF library, since the Makefile rule that uses flex
should not be invoked.  This rule creates ncgenyy.c from ncgen.l, but
we include a pregenerated ncgenyy.c that has a later modification date
than ncgen.l in the source distribution, so make should ignore this
rule and just use the distributed ncgenyy.c.

This works if you untar (or unzip) the files in a way that preserves
the file modification dates.  However, if you then copy the source
directories somewhere else in a way that does not preserve file
modification times, or edit ncgen.l to change its modification time,
ncgenyy.c may end up with an earlier modification time than ncgen.l,
and make would try to rebuild it.

On most platforms, lex will work just as well as flex.  The only
reason we use the latter is that lex on IRIX generates (or at least
used to generate) code that causes the IRIX C compiler to emit a huge
number of warning messages, and we were trying to forestall having to
answer all the resulting support questions.

Anyway, thanks for reporting the problem.  We may find a better way to
handle this in a future release.

--Russ

_____________________________________________________________________

Russ Rew                                         UCAR Unidata Program
address@hidden                     http://www.unidata.ucar.edu