[GRASS-dev] Compile errors - dllmain and fmode - releasebranch_6_4 and develbranch_6

Markus Neteler neteler at osgeo.org
Wed Mar 4 03:00:10 EST 2009


On Wed, Mar 4, 2009 at 3:25 AM, Glynn Clements <glynn at gclements.plus.com> wrote:
>
> Markus Neteler wrote:
>
>> >> Lots of compile errors on make on my vista machine (using mingw/msys
>> >> not osgeo4w). This is the first one, from lib/datetime:
>> >>
>> >> gcc -shared -o /usr/local/src/grass-6.4_release/dist.i686-pc-mingw32/lib/libgrass_datetime.6.4.0svn.dll
>> >> -L/usr/local/src/grass-6.4_release/dist.i686-pc-mingw32/lib
>> >> -Wl,--export-dynamic,--enable-runtime-pseudo-reloc  -L/usr/local/lib
>> >> -L/usr/local/pgsql/lib   OBJ.i686-pc-mingw32/between.o
>> >> OBJ.i686-pc-mingw32/copy.o OBJ.i686-pc-mingw32/same.o
>> >> OBJ.i686-pc-mingw32/diff.o OBJ.i686-pc-mingw32/error.o
>> >> OBJ.i686-pc-mingw32/format.o OBJ.i686-pc-mingw32/incr1.o
>> >> OBJ.i686-pc-mingw32/incr2.o OBJ.i686-pc-mingw32/incr3.o
>> >> OBJ.i686-pc-mingw32/local.o OBJ.i686-pc-mingw32/misc.o
>> >> OBJ.i686-pc-mingw32/change.o OBJ.i686-pc-mingw32/scan.o
>> >> OBJ.i686-pc-mingw32/sign.o OBJ.i686-pc-mingw32/type.o
>> >> OBJ.i686-pc-mingw32/tz1.o OBJ.i686-pc-mingw32/tz2.o
>> >> OBJ.i686-pc-mingw32/values.o
>> >> ../../lib/gis/OBJ.i686-pc-mingw32/dllmain.o && \
>> >>         (cd /usr/local/src/grass-6.4_release/dist.i686-pc-mingw32/lib;
>> >> ln -f -s libgrass_datetime.6.4.0svn.dll
>> >> /usr/local/src/grass-6.4_release/dist.i686-pc-mingw32/lib/libgrass_datetime.dll)
>> >> gcc.exe: ../../lib/gis/OBJ.i686-pc-mingw32/dllmain.o: No such file or directory
>> >> make: *** [/usr/local/src/grass-6.4_release/dist.i686-pc-mingw32/lib/libgrass_datetime.6.4.0svn.dll]
>> >> Error 1
>> >>
>> >> and from lib/gis:
>> >> make: *** No rule to make target
>> >> `../../lib/gis/OBJ.i686-pc-mingw32/dllmain.o', needed by `default'.
>> >> Stop.
>> >>
>> >> The errors seem to be related to the dllmain and fmode problems from
>> >> ticket #469 <http://trac.osgeo.org/grass/ticket/469>, but they seem to
>> >> affect only the versions post-fix. While releasebranch_6_4 and
>> >> develbranch_6 have make errors, releasebranch_6_3 doesn't have these
>> >> errors.
>> >
>> > It appears that someone committed only half of the fix with r35770.
>>
>> The fixes were
>> - 6.4.svn  (r35767, r35769)
>> - 6.4.0svn (r35768, r35770)
>>
>> > [Probably because a complete fix doesn't exist; the change implies
>> > that dllmain.c would be part of lib/gis, but lib/datetime is built
>> > first.]
>>
>> What is exactly missing?
>
> dllmain.c.
>
> But hang on: DLLMAIN_OBJ doesn't appear to be defined anywhere in
> develbranch_6.

I seem to have a different version:

[neteler at localhost grass64]$ grep DLLMAIN_OBJ include/Make/* lib/gis/Makefile
include/Make/Shlib.make:  DLLMAIN_OBJ =
$(MODULE_TOPDIR)/lib/gis/$(OBJDIR)/dllmain.o
include/Make/Shlib.make:        $(SHLIB_LD) -o $@ $(LDFLAGS) $^
$(EXTRA_LIBS) $(DLLMAIN_OBJ) && \
lib/gis/Makefile:default: $(DLLMAIN_OBJ) lib $(FMODE_OBJ) $(DATAFILES)
$(COLORFILES) $(ETC)/colors.desc $(ETC)/element_list

Also 6.4.0svn:
[neteler at localhost grass64_release]$ grep DLLMAIN_OBJ include/Make/*
lib/gis/Makefile
include/Make/Shlib.make:  DLLMAIN_OBJ =
$(MODULE_TOPDIR)/lib/gis/$(OBJDIR)/dllmain.o
include/Make/Shlib.make:        $(SHLIB_LD) -o $@ $(LDFLAGS) $^
$(EXTRA_LIBS) $(DLLMAIN_OBJ) && \
lib/gis/Makefile:default: $(DLLMAIN_OBJ) lib $(FMODE_OBJ) $(DATAFILES)
$(COLORFILES) $(ETC)/colors.desc $(ETC)/element_list

Can anyone else confirm?

> Never mind. Someone who actually has the relevant versions checked out
> will need to look into this. I think I'm just going to stick to 7.x
> from now on.

Markus


More information about the grass-dev mailing list