[GRASSLIST:5246] install-grass51 No rule to make target `bitmap.c'

Dear all,

While doing - grass 5.1 Make - I get an error due to No rule to make target
bitmap.c'.
I use grass51src_cvs_snapshot_exp_2002_12_2 and
grass50src_cvs_snapshot_exp_2002_12_20, install the software under Suse linux
7.2
and do:

CFLAGS="-g -Wall" ./configure --with-grass50=../grass50_exp_2002_12_20
--with-postgres-includes=/usr/local/pgsql/include
(for some reason the postgres-includes can not be found so
--with-postgres-includes....... etc.)
The compilation is succesful:
GRASS is now configured for i686-pc-linux-gnu

make mix
./tools/link -old=../grass50_exp_2002_12_20 -new=./ -conf=./tools/link.conf
Linking
Subdir ignored: ../grass50_exp_2002_12_20/src/include/CVS
Subdir ignored: ../grass50_exp_2002_12_20/src/include/geom
Subdir ignored: ../grass50_exp_2002_12_20/src/include/vect
Subdir ignored: ../grass50_exp_2002_12_20/src/libes/bitmap/CVS ......
make mix = also succesful
.... although some subdir's are ignored:
but these are not linked yet (true?)

make or ( make 2>&1 | tee compileOutput.log )
problems arises:
the compileOutput.log shows:

compileOutput.log:
make[1]: Entering directory `/home/harj/gis/grass/grass51_exp_2002_12_20/lib'
bitmap
make[2]: Entering directory
`/home/harj/gis/grass/grass51_exp_2002_12_20/lib/bitmap'
make[2]: *** No rule to make target `bitmap.c', needed by
`OBJ.i686-pc-linux-gnu/bitmap.o'. Stop.
make[2]: Leaving directory
`/home/harj/gis/grass/grass51_exp_2002_12_20/lib/bitmap'
make[1]: *** [subdirs] Error 1
make[1]: Leaving directory `/home/harj/gis/grass/grass51_exp_2002_12_20/lib'
make: *** [default] Error 1

Any ideas?

with kinest regards,
Nico Hardebol

Nico Hardebol wrote:

While doing - grass 5.1 Make - I get an error due to No rule to make target
bitmap.c'.
I use grass51src_cvs_snapshot_exp_2002_12_2 and
grass50src_cvs_snapshot_exp_2002_12_20, install the software under Suse linux
7.2
and do:

CFLAGS="-g -Wall" ./configure --with-grass50=../grass50_exp_2002_12_20

1. GRASS 5.1 is experimental; all comments should go to the developers'
list at grass5@grass.itc.it.

2. The argument to --with-grass50= should be an *absolute* path, not a
relative path; it has to be valid from any directory, not just the
top-level directory.

--
Glynn Clements <glynn.clements@virgin.net>

Nico Hardebol wrote:

Dear all,

While doing - grass 5.1 Make - I get an error due to No rule to make target bitmap.c'.
I use grass51src_cvs_snapshot_exp_2002_12_2 and grass50src_cvs_snapshot_exp_2002_12_20, install the software under Suse linux 7.2
and do:

CFLAGS="-g -Wall" ./configure --with-grass50=../grass50_exp_2002_12_20 --with-postgres-includes=/usr/local/pgsql/include
(for some reason the postgres-includes can not be found so --with-postgres-includes....... etc.)
The compilation is succesful:
GRASS is now configured for i686-pc-linux-gnu

make mix
./tools/link -old=../grass50_exp_2002_12_20 -new=./ -conf=./tools/link.conf
Linking
Subdir ignored: ../grass50_exp_2002_12_20/src/include/CVS
Subdir ignored: ../grass50_exp_2002_12_20/src/include/geom
Subdir ignored: ../grass50_exp_2002_12_20/src/include/vect
Subdir ignored: ../grass50_exp_2002_12_20/src/libes/bitmap/CVS ......
make mix = also succesful
.... although some subdir's are ignored:
but these are not linked yet (true?)

make or ( make 2>&1 | tee compileOutput.log )
problems arises:
the compileOutput.log shows:

compileOutput.log:
make[1]: Entering directory `/home/harj/gis/grass/grass51_exp_2002_12_20/lib'
bitmap
make[2]: Entering directory `/home/harj/gis/grass/grass51_exp_2002_12_20/lib/bitmap'
make[2]: *** No rule to make target `bitmap.c', needed by `OBJ.i686-pc-linux-gnu/bitmap.o'. Stop.
make[2]: Leaving directory `/home/harj/gis/grass/grass51_exp_2002_12_20/lib/bitmap'
make[1]: *** [subdirs] Error 1
make[1]: Leaving directory `/home/harj/gis/grass/grass51_exp_2002_12_20/lib'
make: *** [default] Error 1

Any ideas?

with kinest regards,
Nico Hardebol

Why a .c should be a target? Check the Makefile. (However I hadn't any of these problems!)

Piero Cavalieri wrote:

>make[2]: *** No rule to make target `bitmap.c', needed by
>`OBJ.i686-pc-linux-gnu/bitmap.o'. Stop.

Why a .c should be a target?

If a dependency doesn't exist, make assumes that it is meant to be
generated by some other rule. If it can't find such a rule, then you
get an error like the one above.

--
Glynn Clements <glynn.clements@virgin.net>

On Sun, Dec 29, 2002 at 04:05:12PM +0100, Piero Cavalieri wrote:

Nico Hardebol wrote:

>Dear all,
>
>While doing - grass 5.1 Make - I get an error due to No rule to make target
>bitmap.c'.
>I use grass51src_cvs_snapshot_exp_2002_12_2 and
>grass50src_cvs_snapshot_exp_2002_12_20, install the software under Suse linux
>7.2
>and do:
>
>CFLAGS="-g -Wall" ./configure --with-grass50=../grass50_exp_2002_12_20
>--with-postgres-includes=/usr/local/pgsql/include
>(for some reason the postgres-includes can not be found so
>--with-postgres-includes....... etc.)
>The compilation is succesful:
>GRASS is now configured for i686-pc-linux-gnu
>
>make mix
>./tools/link -old=../grass50_exp_2002_12_20 -new=./ -conf=./tools/link.conf
>Linking
>Subdir ignored: ../grass50_exp_2002_12_20/src/include/CVS
>Subdir ignored: ../grass50_exp_2002_12_20/src/include/geom
>Subdir ignored: ../grass50_exp_2002_12_20/src/include/vect
>Subdir ignored: ../grass50_exp_2002_12_20/src/libes/bitmap/CVS ......
>make mix = also succesful
>.... although some subdir's are ignored:
>but these are not linked yet (true?)

I have changed the message. Now above is no longer printed, but
the assigned links:
[...]
Linked /thuille1/ssi/cvsgrass_exp/src/include/winname.h.in
Linked /thuille1/ssi/cvsgrass_exp/src/libes/bitmap/bitmap.c
Linked /thuille1/ssi/cvsgrass_exp/src/libes/bitmap/main.c
Linked /thuille1/ssi/cvsgrass_exp/src/libes/bitmap/smain.c
Linked /thuille1/ssi/cvsgrass_exp/src/libes/bitmap/sparse.c
Linked /thuille1/ssi/cvsgrass_exp/src/libes/btree/create.c

>make or ( make 2>&1 | tee compileOutput.log )
>problems arises:
>the compileOutput.log shows:
>
>compileOutput.log:
>make[1]: Entering directory `/home/harj/gis/grass/grass51_exp_2002_12_20/lib'
>bitmap
>make[2]: Entering directory
>`/home/harj/gis/grass/grass51_exp_2002_12_20/lib/bitmap'
>make[2]: *** No rule to make target `bitmap.c', needed by
>`OBJ.i686-pc-linux-gnu/bitmap.o'. Stop.
>make[2]: Leaving directory
>`/home/harj/gis/grass/grass51_exp_2002_12_20/lib/bitmap'
>make[1]: *** [subdirs] Error 1
>make[1]: Leaving directory `/home/harj/gis/grass/grass51_exp_2002_12_20/lib'
>make: *** [default] Error 1
>
>Any ideas?

Are you sure that bitmap.c is present in your 5.0 source code?
If yes, are permissions correct?

It should work (does for me).

Best,

Markus Neteler