Ralf Wildenhues wrote: > Which libtool(ize) version was used? What's the output of > ../../libtool --config | grep "^max_cmd_len"
The libtool version is the 1.5.20-2 Cygwin package. max_cmd_len=8192. > Anyway I guess the difference is that the report speaks about the CVS > HEAD version of libgeos; and the ChangeLog[1] suggests that the change > on 2006-01-31 was responsible for the change; that was post-2.2.1. Yes, I tried building from CVS HEAD and got a much different result. However, this time it still does not do any "ld -r", but it instead tries to use "gcc -shared" for the final link. Something else seems broken now though, which results in literally 13000+ lines of "undefined reference" due to the fact that linking is done with gcc instead of g++, and there's no -lstdc++ included: /bin/bash ../libtool --tag=CC --mode=link gcc -g -O2 -o libgeos.la -rpath /usr/local/lib -release 3.0.0cvs -no-undefined algorithm/libalgorithm.la geom/libgeom.la geomgraph/libgeomgraph.la index/libindex.la io/libio.la noding/libnoding.la operation/liboperation.la planargraph/libplanargraph.la precision/libprecision.la util/libutil.la rm -fr .libs/libgeos.dll.a gcc -shared -Wl,--whole-archive algorithm/.libs/libalgorithm.a geom/.libs/libgeom.a geomgraph/.libs/libgeomgraph.a index/.libs/libindex.a io/.libs/libio.a noding/.libs/libnoding.a operation/.libs/liboperation.a planargraph/.libs/libplanargraph.a precision/.libs/libprecision.a util/.libs/libutil.a -Wl,--no-whole-archive -o .libs/cyggeos-3-0-0cvs.dll -Wl,--enable-auto-image-base -Wl,--out-implib,.libs/libgeos.dll.a Creating library file: .libs/libgeos.dll.a algorithm/.libs/libalgorithm.a(CentroidArea.o): In function `_ZNK4geos9algorithm12CentroidArea11getCentroidEv': /usr/src/geos/source/algorithm/CentroidArea.cpp:62: undefined reference to `operator new(unsigned int)' [...snip MANY lines...] util/.libs/libutil.a(Profiler.o): In function `_ZN4geos4utillsERSoRKNS0_7ProfileE': /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/c++/ostream:204: undefined reference to `std::_Rb_tree_decrement(std::_Rb_tree_node_base*)' collect2: ld returned 1 exit status make[2]: *** [libgeos.la] Error 1 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 Brian