[geos-devel] Geos 3 build issues on Windows

Mateusz Łoskot mateusz at loskot.net
Sun Apr 2 23:08:04 EDT 2006


Hi Charlie,

By the way, there is a Bug Tracker for GEOS that is a better place to
report bugs because then it will be guaranteed to
not to forgot about them ;-)

http://postgis.refractions.net/bugs/

Charlie Savage wrote:
> Some geos 3 build issues on Windows with VC++ 8.0 (using latest CVS
> head)
> 
> 1.  source/noding/snapround/MCIndexSnapRounder.cpp needs to #include 
> <algorithm> for the std::for_each method on line 92
> 
> 2.  source/index/strtree/STRtree.cpp needs to include #include 
> <algorithm> for the std::sort method on line 208.

Are you sure those files do not include <algorithm> in latest CVS?
I did update (cvs update -P -d) my sandbox today and GEOS compiles well.
Here you can see that those files include (revision nr visible):

http://mateusz.loskot.net/chwila/MCIndexSnapRounder.png
http://mateusz.loskot.net/chwila/STRtree.png


> 3.  RobustLineIntersector and NonRobustLineIntersector define classes
>  that are not declared anywhere.

Yes. You have to remove those files from your project. Those files have
been left for some archive reason but should not be compiled.


> 4.  There are various files that appear to do nothing:
> 
> PolygonExtracter.obj : warning LNK4221: no public symbols found;
> archive member will be inaccessible PointExtracter.obj : warning
> LNK4221: no public symbols found; archive member will be inaccessible
>  LinearComponentExtracter.obj : warning LNK4221: no public symbols
> found; archive member will be inaccessible 
> [...]

You're right. Those files are empty and look like this:

namespace geos {
namespace geom { // geos.geom
namespace util { // geos.geom.util

} // namespace geos.geom.util
} // namespace geos.geom
} // namespace geos

strk:
Will those files be used for any purpose?

> For MinGw - still doesn't build.  Same link error:
> 
> c:\Development\MinGW\mingw32\bin\ld.exe: BFD 2.16.91 20060119
> assertion fail ../../src/bfd/cofflink.c:1926 make[2]: ***
> [libgeos.la] Error 5 make[2]: Leaving directory
> `/usr/src/geos/source' make[1]: *** [all-recursive] Error 1 make[1]:
> Leaving directory `/usr/src/geos/source' make: *** [all-recursive]
> Error 1
> 
> Causes ld to have a segmentation fault.

I have no idea :-(
May be those empty files for which VC++ gives warnings cause those errors?

Cheers
-- 
Mateusz Łoskot
http://mateusz.loskot.net



More information about the geos-devel mailing list