From: Jeff D. H. <jef...@fo...> - 2004-03-09 21:40:21
|
I've tried to find a previous question like this ran into few hits on the archives, so... I've done away with my cygwin installation (good for R, bad for GRASS) and have been trying to simply make a dll using make. My Makefile is very simple: OBJS = openfvs.o \ bc_mof.o \ ...blah, blah, blah.... yet_another_file.o VPATH = openfvs:${DIRS} DIRS = src:src/conifers:src/organon CC = gcc FC = g77 LIB = /usr/lib/libc.a /usr/lib/libm.a /usr/lib/libg2c.a CFLAGS = -g -Wall -Iinclude FFLAGS = -O clean: rm *.o openfvs : ${OBJS} ${LIB} ${CC} -o $@ ${OBJS} ${LIB} ar -rcsv openfvs.a $(OBJS) And all the files compile. At the bottom of the build, I continue to get make: *** No rule to make target `C:\Program', needed by `openfvs'. Stop. C:\openfvs> Which confuses me since it looks like there's some problem with the path. I normally simply open a command window (not the msys shell) and type "make openfvs" and off it goes. Since I have vc6/df6 on this machine *and* mingw, is there a conflict? I don't understand why it's even looking in that path? Do I need to export or define environment variables? Here's the version I'm trying to use... C:\openfvs>gcc --ver Reading specs from c:/mingw/bin/../lib/gcc-lib/mingw32/3.2.3/specs Configured with: ../gcc/configure --with-gcc --with-gnu-ld --with-gnu-as --host=mingw32 --tar get=mingw32 --prefix=/mingw --enable-threads --disable-nls --enable-language s=c++,f77,objc --disable-win32-registry --disable-shared --enable-sjlj-excep tions Thread model: win32 gcc version 3.2.3 (mingw special 20030504-1) C:\openfvs>make --ver GNU Make version 3.79.1, by Richard Stallman and Roland McGrath. Built for i686-pc-msys Thanks, Jeff. --- Jeff D. Hamann Forest Informatics, Inc. PO Box 1421 Corvallis, Oregon USA 97339-1421 (office) 541-754-1428 (cell) 541-740-5988 jef...@fo... www.forestinformatics.com |
From: Greg C. <chi...@mi...> - 2004-03-09 22:30:30
|
"Jeff D. Hamann" wrote: [...] > make: *** No rule to make target `C:\Program', needed by `openfvs'. Stop. > > Which confuses me since it looks like there's some problem with the path. Set an empty $PATH before running make to rule that out. I'd guess that this target > openfvs : ${OBJS} ${LIB} has a dependency on some file whose full name has an embedded space, like "C:/Program Files/whatever'. I have about a half dozen compilers simultaneously installed, and they coexist fine as long as I don't put any of them on the path--just specify them in the makefile, e.g. gcc-2.95.2-1 = /gcc-2.59.2-1/bin/gcc and conditionally set $(CC) to whatever one you want. |