Ticket #1409 (closed defect: fixed)

Opened 2 months ago

Last modified 8 weeks ago

Can't compile topology or raster anymore under mingw

Reported by: robe Owned by: strk
Priority: blocker Milestone: PostGIS 2.0.0
Component: build/upgrade/install Version: trunk
Keywords: Cc: martin

Description

Something happened recently and I don't know what it is. Might be the work strk and dustymugs have been doing with building uninstall scripts for raster and topology, but I can't compile

--with-raster --with-topology anymore.

I first tried --with-topology and that doesn't work either, but leaving those out seems to still work. I think the last time I tried might have been around 12/20 - 12/22, but I think dusty had put in some extra cleaning logic since he said not everything was being removed that should have been so this might be a longer standing problem that is only exhibiting itself now that the clean process is cleaning more.

I tried wiping out my trunk svn and redownloading and that did not help.

Attached is my build log just trying to build --with-topology. I tried with 9.1 and have same issue.

Attachments

build90w_topology.log Download (76.3 KB) - added by robe 2 months ago.
build90_wraster.log Download (76.9 KB) - added by robe 2 months ago.
pg2_wheezy_fail.txt Download (78.0 KB) - added by darkblueb 2 months ago.

Change History

Changed 2 months ago by robe

Changed 2 months ago by robe

Hmm on closer inspection. Looks like it can't find perl. I had this issue with PostGIS and have a hack in place for postgis to replace ${PERL} with perl.

I'll try the same hack with raster and topology and see if that fixes the issue. Would be nice if I didn't need all these hacks. Is there a reason we can't just say perl? Isn't perl always global?

Changed 2 months ago by robe

Okay employing this hack:

sed 's,$(PERL),perl,g' <topology/Makefile >topology/Makefile2
mv topology/Makefile2 topology/Makefile

for topology fixed my topology compile issue, however similar hack for raster

sed 's,$(PERL),perl,g' <raster/rt_pg/Makefile >raster/rt_pg/Makefile2
mv raster/rt_pg/Makefile2 raster/rt_pg/Makefile

Did not. It doesn't seem to be complaining about not being able to find perl though so something else must be wrong.

See attached build just trying to build --with-raster

Changed 2 months ago by robe

Changed 2 months ago by robe

Okay I think I figured out my issue with raster. strk it's this line you added to rt_pg/Makefile.in

http://trac.osgeo.org/postgis/browser/trunk/raster/rt_pg/Makefile.in#L92

# SQL objects deps here
$(SQL_OBJS): ../../postgis/sqldefines.h

Wouldn't that overwrite this?

$(SQL_OBJS): %.in: %.in.c
	$(CPP) -I../../postgis/ -I../../ -traditional-cpp $< | grep -v '^#' > $@

Should that other part go in ${OBJS} instead.

I realized I don't know quite what I'm talking about but getting rid of that line you added fixes my compile issue.

Changed 2 months ago by martin

  • cc martin added

Changed 2 months ago by darkblueb

I am not able to build on Debian Wheezy today...

Changed 2 months ago by darkblueb

Changed 8 weeks ago by strk

Theoretically no, there should be no override, the latter should be only encoding an additional dependency. I guess it depends on make version. It is meant to force rebuild of the SQL file when changing sqldefines, which in turn is changed by ./configure

Changed 8 weeks ago by strk

  • status changed from new to closed
  • resolution set to fixed

Peter Clark found out: white space. Please try r8599

Changed 8 weeks ago by robe

okay still seems to work so I guess it fixes it.

Changed 8 weeks ago by darkblueb

yes - fixed for me, too

Note: See TracTickets for help on using tickets.