[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: make dependencies not working for me...
From: |
Ralf Corsepius |
Subject: |
Re: make dependencies not working for me... |
Date: |
Fri, 28 Jan 2005 07:39:48 +0100 |
On Thu, 2005-01-27 at 09:42 -0700, Ed Hartnett wrote:
> Howdy all!
>
> I'm a developer working on netCDF, a freeware library for climate and
> Earth scientists. Recently I converted from our old time-honored and
> hand-crafted Makefiles to automake generated files.
>
> But for some reason, using the automake generated files, dependency
> tracking no longer works. For example, if I do a make check, and find
> and fix a bug in one of my code files, and do a make check again, I
> get an error like this:
>
> bash-3.00$ make check
> Making check in libsrc
> make[1]: Entering directory `/home/ed/n3_tmp1/libsrc'
> m4 -B10000 attr.m4 >attr.c
> if h5cc -DHAVE_CONFIG_H -I. -I. -I. -Df2cFortran -g -MT attr.o -MD -MP -MF
> ".deps/attr.Tpo" -c -o attr.o attr.c; \
^^^^^^^^
Note this. What is h5cc?
At this place the compiler is supposed to be called.
> then mv -f ".deps/attr.Tpo" ".deps/attr.Po"; else rm -f ".deps/attr.Tpo";
> exit 1; fi
> cc1: error: to generate dependencies you must specify either -M or -MM
This indicates that "h5cc" isn't able to cope with the rules being
generated by automake.
> Doesn't automake automatically generate dependencies?
It does.
> Or do I have to tell it to do so?
The default is to generated dependencies, but you can turn dependency
tracking off, if you want to (--disable-dependency-tracking).
> What does this mean:
> error: to generate dependencies you must specify either -M or -MM
>
> Where do I specify -M or -MM?
Normally you don't. The "-M<something>" compiler flags you see above are
generated by automake as part of its dependency tracking.
The error message you see is a follow up error to something having gone
wrong earlier. What exactly might have gone wrong is hard to tell.
Either your "h5cc" is not correctly detected/supported by automake, or
your configure script could be in trouble (Is "h5cc" actually a
compiler, or is this "h5cc" a corrupted make/shell/environment
variable?).
Ralf