[geos-devel] 3.12.0beta2
Greg Troxel
gdt at lexort.com
Thu Jun 15 06:10:32 PDT 2023
This is of course not a request to hold the release; just a comment on
something that I don't yet understand. I am able to run tests by
installing the just built geos and then running them.
The plot thickens on the meta test issues. I built on RPI3 under
NetBSD; geos had not been previously installed (because that CPU, 1 GB
RAM, and no monitor or keyboard makes for a poor qgis experience!). The
tests all failed, which if the issue was rpath order should not be. I
then looked into the build dir:
/usr/pkgsrc/geography/geos/work/geos-3.12.0beta2/bin $ ldd test_xmltester
test_xmltester:
-lgeos.3.12.0 => not found
-lstdc++.9 => /usr/lib/libstdc++.so.9
-lm.0 => /usr/lib/libm.so.0
-lc.12 => /usr/lib/libc.so.12
objdump says
NEEDED libgeos.so.3.12.0
NEEDED libstdc++.so.9
NEEDED libm.so.0
NEEDED libc.so.12
RPATH /usr/pkg/lib
which is ok for an installed program, but not one that intends to use a
library from the build tree.
I see 'make test' runs ctest, but I can't follow how that is supposed to
set up LD_LIBRARY_PATH to pre-load from the built but not installed
library. I can't find 'LD_LIBR' by grepping the source tree. I know
autoconf/libtool links once in the tree and relinks at install time --
but I do not have the impression cmake does it that way.
I wonder if for others, tests work from a build, in the case of no geos
at all installed on the system, and what ldd/objdump says on
bin/test_xmltester after building.
Can anyone explain the theory of how the tests are run linking against
the just-built library instead of one that is (or is not) installed in
the system?
More information about the geos-devel
mailing list