[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