Opened 6 months ago

Closed 6 months ago

Last modified 6 months ago

#970 closed defect (fixed)

CMake broken on winnie and appveyor (mingw64, VS) and travis

Reported by: robe Owned by: geos-devel@…
Priority: major Milestone: 3.8.0
Component: Default Version: master
Severity: Unassigned Keywords:
Cc:

Description

Seems as a result of change

https://git.osgeo.org/gitea/geos/geos/commit/b15fd1171823d16195bee17f2c7b44778603258d

Might be just the cmake needs upgrading on both.

Commit 1aedfca497d6de23bd3a857191da10b98b6b01f0 by mateusz

Modernize CMake configuration
Refactoring based on practices of the Modern CMake approach:
* Set project version based on `version.txt` spec.
* Build shared libraries by default.
* Build tools and `geos-config` script.
* Add make `check` target to run `ctest` (no dependencies).
* Move failing/overlarge tests into `failure` directory.
* Add target to deploy Config-module with installed targets:
 `GEOS::geos`, `GEOS::geos_c`.
* Add basic uninstall target
* Add basic client example configured with CMake to use GEOS targets.

Both winnie and appveyor are broken

On Winnie (which is running mingw64, but using general windows compiled cmake) I get this - FWIW the cmake version in use is CMake 3.12.1 on winnie. I'll upgrade to see if it fixes the issue.

-- The C compiler identification is GNU 8.1.0
-- The CXX compiler identification is GNU 8.1.0
-- Check for working C compiler: C:/ming64gcc81/mingw64/bin/gcc.exe
-- Check for working C compiler: C:/ming64gcc81/mingw64/bin/gcc.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: C:/ming64gcc81/mingw64/bin/g++.exe
-- Check for working CXX compiler: C:/ming64gcc81/mingw64/bin/g++.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- GEOS: Version 3.8.0-dev
-- GEOS: C API soversion 
-- GEOS: JTS port 1.13.0
-- GEOS: Require C++11
-- GEOS: Developer mode enabled
-- Configuring done
-- Generating done
:
Unable to find executable: E:/jenkins/geos/branches/build64cmake/tests/perf/operation/predicate/test_perf_rectangle_intersects.exe
6/7 Test #6: test_perf_rectangle_intersects ...***Not Run   0.00 sec
    Start 7: test_perf_memleak_mp_prep
Could not find executable E:/jenkins/geos/branches/build64cmake/tests/perf/capi/test_perf_memleak_mp_prep.exe
Looked in the following places:
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/test_perf_memleak_mp_prep.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/test_perf_memleak_mp_prep.exe.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/Release/test_perf_memleak_mp_prep.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/Release/test_perf_memleak_mp_prep.exe.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/Debug/test_perf_memleak_mp_prep.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/Debug/test_perf_memleak_mp_prep.exe.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/MinSizeRel/test_perf_memleak_mp_prep.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/MinSizeRel/test_perf_memleak_mp_prep.exe.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/RelWithDebInfo/test_perf_memleak_mp_prep.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/RelWithDebInfo/test_perf_memleak_mp_prep.exe.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/Deployment/test_perf_memleak_mp_prep.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/Deployment/test_perf_memleak_mp_prep.exe.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/Development/test_perf_memleak_mp_prep.exe
E:/jenkins/geos/branches/build64cmake/tests/perf/capi/Development/test_perf_memleak_mp_prep.exe.exe
Unable to find executable: E:/jenkins/geos/branches/build64cmake/tests/perf/capi/test_perf_memleak_mp_prep.exe
7/7 Test #7: test_perf_memleak_mp_prep ........***Not Run   0.00 sec

0% tests passed, 7 tests failed out of 7

Total Test time (real) =   0.04 sec

The following tests FAILED:
	  1 - test_geos_unit (Not Run)
	  2 - test_xmltester (Not Run)
	  3 - test_bug234 (Not Run)
	  4 - test_perf_class_sizes (Not Run)
	  5 - test_perf_iterated_buffer (Not Run)
	  6 - test_perf_rectangle_intersects (Not Run)
	  7 - test_perf_memleak_mp_prep (Not Run)
Errors while running CTest
make[3]: *** [tests/CMakeFiles/check.dir/build.make:57: tests/CMakeFiles/check] Error 8
make[2]: *** [CMakeFiles/Makefile2:1190: tests/CMakeFiles/check.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:1197: tests/CMakeFiles/check.dir/rule] Error 2
make: *** [Makefile:591: check] Error 2

Appveyor's issue seems to be just complain about too old a version. Version needed is 3.14 or higher, which is odd I didn't get the same warning on winnie so maybe that's a VS only check.

uild started
Write-Host "Building GEOS branch: $env:APPVEYOR_REPO_BRANCH" -ForegroundColor Magenta
Building GEOS branch: master
if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" if "%GENERATOR%"=="NMake Makefiles" if "%PLATFORM%"=="x86" call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat"
if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" if "%GENERATOR%"=="NMake Makefiles" if "%PLATFORM%"=="x64" call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"
if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2015" if "%GENERATOR%"=="NMake Makefiles" if "%PLATFORM%"=="x86" call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2015" if "%GENERATOR%"=="NMake Makefiles" if "%PLATFORM%"=="x64" call "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64
if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2015" if "%GENERATOR%"=="NMake Makefiles" if "%PLATFORM%"=="x64" call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64
Fetching repository commit (b15fd11)...OK
Total: 10.1 MB in 1247 files
Write-Host "Running $env:BUILDER with $env:GENERATOR" -ForegroundColor Magenta
Running CMake with Visual Studio 15 2017 Win64
if "%BUILDER%"=="CMake" cmake.exe -G "%GENERATOR%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% %APPVEYOR_BUILD_FOLDER%
CMake Error at CMakeLists.txt:18 (cmake_minimum_required):
  CMake 3.14 or higher is required.  You are running version 3.13.3
-- Configuring incomplete, errors occurred!

Change History (7)

comment:1 Changed 6 months ago by robe

Summary: CMAke broken on winnie and appveyor (mingw64, VS)CMAke broken on winnie and appveyor (mingw64, VS) and travis

Just checked even our happy go luck travis cmake runs are failing.

-- GEOS: C API soversion 11
-- GEOS: JTS port 1.13.0
-- GEOS: Require C++11
-- GEOS: Developer mode enabled
CMake Error at tests/xmltester/CMakeLists.txt:15 (add_executable):
  add_executable called with incorrect number of arguments
CMake Error at tests/xmltester/CMakeLists.txt:16 (target_sources):
  Cannot specify sources for target "test_xmltester" which is not built by
  this project.
CMake Error at tests/xmltester/CMakeLists.txt:23 (target_link_libraries):
  Cannot specify link libraries for target "test_xmltester" which is not
  built by this project.

comment:2 Changed 6 months ago by mloskot

CMake's rule #1 is always use the latest CMake - Kitware ensures it very easy deploy it (zip to unpack, .sh installer), e.g. like so

https://github.com/mloskot/wsl-config/blob/master/scripts/install-cmake-latest.ps1 https://github.com/mloskot/wsl-config/blob/master/scripts/install-cmake-latest.sh

or tweak the lines here, perhaps a notch lower version will work too

https://github.com/libgeos/geos/blob/master/CMakeLists.txt#L16-L19

Last edited 6 months ago by mloskot (previous) (diff)

comment:3 Changed 6 months ago by robe

Upgraded winnie to latest cmake which is 3.14.4 and that did not fix her issue

comment:4 Changed 6 months ago by robe

Summary: CMAke broken on winnie and appveyor (mingw64, VS) and travisCMake broken on winnie and appveyor (mingw64, VS) and travis

comment:5 Changed 6 months ago by mloskot

Must be a different issue then.

On Linux all builds fine. On Windows, there seem to be only some ttmath issues.

comment:6 Changed 6 months ago by robe

Resolution: fixed
Status: newclosed

For the record I think this issue is fixed.

On winnie I had:

-DGEOS_ENABLE_INLINE=NO

But this variable had been removed in https://git.osgeo.org/gitea/geos/geos/commit/b15fd1171823d16195bee17f2c7b44778603258d

and replaced with a reverse

DISABLE_GEOS_INLINE

In either case the default is to turn inlining ON. But in using inlining on,

I would get these errors in CMAKE for mingw64 building:

CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x658): multiple definition of `geos::geomgraph::DirectedEdge::isInResult()'
CMakeFiles/geos.dir/objects.a(DirectedEdgeStar.cpp.obj):DirectedEdgeStar.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge10isInResultEv[_ZN4geos9geomgraph12DirectedEdge10isInResultEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x684): multiple definition of `geos::geomgraph::DirectedEdge::setVisited(bool)'
CMakeFiles/geos.dir/objects.a(DirectedEdge.cpp.obj):DirectedEdge.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge10setVisitedEb[_ZN4geos9geomgraph12DirectedEdge10setVisitedEb]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x6c0): multiple definition of `geos::geomgraph::DirectedEdge::getEdgeRing()'
CMakeFiles/geos.dir/objects.a(DirectedEdgeStar.cpp.obj):DirectedEdgeStar.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge11getEdgeRingEv[_ZN4geos9geomgraph12DirectedEdge11getEdgeRingEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x70a): multiple definition of `geos::geomgraph::DirectedEdge::getDepth(int)'
CMakeFiles/geos.dir/objects.a(DirectedEdgeStar.cpp.obj):DirectedEdgeStar.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge8getDepthEi[_ZN4geos9geomgraph12DirectedEdge8getDepthEi]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x72a): multiple definition of `geos::geomgraph::DirectedEdge::getSym()'
CMakeFiles/geos.dir/objects.a(DirectedEdgeStar.cpp.obj):DirectedEdgeStar.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge6getSymEv[_ZN4geos9geomgraph12DirectedEdge6getSymEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x740): multiple definition of `geos::geomgraph::DirectedEdge::isForward()'
CMakeFiles/geos.dir/objects.a(EdgeRing.cpp.obj):EdgeRing.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge9isForwardEv[_ZN4geos9geomgraph12DirectedEdge9isForwardEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x756): multiple definition of `geos::geomgraph::DirectedEdge::setSym(geos::geomgraph::DirectedEdge*)'
CMakeFiles/geos.dir/objects.a(PlanarGraph.cpp.obj):PlanarGraph.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge6setSymEPS1_[_ZN4geos9geomgraph12DirectedEdge6setSymEPS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x774): multiple definition of `geos::geomgraph::DirectedEdge::getNext()'
CMakeFiles/geos.dir/objects.a(EdgeRing.cpp.obj):EdgeRing.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge7getNextEv[_ZN4geos9geomgraph12DirectedEdge7getNextEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x78a): multiple definition of `geos::geomgraph::DirectedEdge::setNext(geos::geomgraph::DirectedEdge*)'
CMakeFiles/geos.dir/objects.a(DirectedEdgeStar.cpp.obj):DirectedEdgeStar.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge7setNextEPS1_[_ZN4geos9geomgraph12DirectedEdge7setNextEPS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x7be): multiple definition of `geos::geomgraph::DirectedEdge::setNextMin(geos::geomgraph::DirectedEdge*)'
CMakeFiles/geos.dir/objects.a(DirectedEdgeStar.cpp.obj):DirectedEdgeStar.cpp:(.text$_ZN4geos9geomgraph12DirectedEdge10setNextMinEPS1_[_ZN4geos9geomgraph12DirectedEdge10setNextMinEPS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x7dc): multiple definition of `geos::geomgraph::GeometryGraph::getBoundaryNodes(std::vector<geos::geomgraph::Node*, std::allocator<geos::geomgraph::Node*> >&)'
CMakeFiles/geos.dir/objects.a(GeometryGraph.cpp.obj):GeometryGraph.cpp:(.text$_ZN4geos9geomgraph13GeometryGraph16getBoundaryNodesERSt6vectorIPNS0_4NodeESaIS4_EE[_ZN4geos9geomgraph13GeometryGraph16getBoundaryNodesERSt6vectorIPNS0_4NodeESaIS4_EE]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x812): multiple definition of `geos::geomgraph::GeometryGraph::getGeometry()'
CMakeFiles/geos.dir/objects.a(EdgeEndStar.cpp.obj):EdgeEndStar.cpp:(.text$_ZN4geos9geomgraph13GeometryGraph11getGeometryEv[_ZN4geos9geomgraph13GeometryGraph11getGeometryEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x824): multiple definition of `geos::geomgraph::GeometryGraph::~GeometryGraph()'
CMakeFiles/geos.dir/objects.a(PointLocator.cpp.obj):PointLocator.cpp:(.text$_ZN4geos9geomgraph13GeometryGraphD1Ev[_ZN4geos9geomgraph13GeometryGraphD1Ev]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x882): multiple definition of `geos::geomgraph::GeometryGraph::~GeometryGraph()'
CMakeFiles/geos.dir/objects.a(PointLocator.cpp.obj):PointLocator.cpp:(.text$_ZN4geos9geomgraph13GeometryGraphD0Ev[_ZN4geos9geomgraph13GeometryGraphD0Ev]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x8a8): multiple definition of `geos::algorithm::ConvexHull::ConvexHull(geos::geom::Geometry const*)'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZN4geos9algorithm10ConvexHullC1EPKNS_4geom8GeometryE[_ZN4geos9algorithm10ConvexHullC1EPKNS_4geom8GeometryE]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x91c): multiple definition of `geos::algorithm::ConvexHull::~ConvexHull()'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZN4geos9algorithm10ConvexHullD1Ev[_ZN4geos9algorithm10ConvexHullD1Ev]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x940): multiple definition of `geos::algorithm::ConvexHull::extractCoordinates(geos::geom::Geometry const*)'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZN4geos9algorithm10ConvexHull18extractCoordinatesEPKNS_4geom8GeometryE[_ZN4geos9algorithm10ConvexHull18extractCoordinatesEPKNS_4geom8GeometryE]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x9b8): multiple definition of `geos::geom::GeometryCollection::begin() const'
CMakeFiles/geos.dir/objects.a(PointLocator.cpp.obj):PointLocator.cpp:(.text$_ZNK4geos4geom18GeometryCollection5beginEv[_ZNK4geos4geom18GeometryCollection5beginEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x9f2): multiple definition of `geos::geom::GeometryCollection::end() const'
CMakeFiles/geos.dir/objects.a(PointLocator.cpp.obj):PointLocator.cpp:(.text$_ZNK4geos4geom18GeometryCollection3endEv[_ZNK4geos4geom18GeometryCollection3endEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xa2c): multiple definition of `geos::geom::LineSegment::LineSegment(geos::geom::LineSegment const&)'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZN4geos4geom11LineSegmentC1ERKS1_[_ZN4geos4geom11LineSegmentC1ERKS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xa8a): multiple definition of `geos::geom::LineSegment::LineSegment(geos::geom::Coordinate const&, geos::geom::Coordinate const&)'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZN4geos4geom11LineSegmentC1ERKNS0_10CoordinateES4_[_ZN4geos4geom11LineSegmentC1ERKNS0_10CoordinateES4_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xb76): multiple definition of `geos::geom::LineSegment::LineSegment()'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZN4geos4geom11LineSegmentC1Ev[_ZN4geos4geom11LineSegmentC1Ev]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xbe0): multiple definition of `geos::geom::LineSegment::~LineSegment()'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZN4geos4geom11LineSegmentD1Ev[_ZN4geos4geom11LineSegmentD1Ev]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xbfa): multiple definition of `geos::geom::LineSegment::~LineSegment()'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZN4geos4geom11LineSegmentD0Ev[_ZN4geos4geom11LineSegmentD0Ev]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xc20): multiple definition of `geos::geom::LineSegment::distancePerpendicular(geos::geom::Coordinate const&) const'
CMakeFiles/geos.dir/objects.a(MinimumDiameter.cpp.obj):MinimumDiameter.cpp:(.text$_ZNK4geos4geom11LineSegment21distancePerpendicularERKNS0_10CoordinateE[_ZNK4geos4geom11LineSegment21distancePerpendicularERKNS0_10CoordinateE]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xc60): multiple definition of `geos::geom::LineSegment::pointAlong(double, geos::geom::Coordinate&) const'
CMakeFiles/geos.dir/objects.a(Densifier.cpp.obj):Densifier.cpp:(.text$_ZNK4geos4geom11LineSegment10pointAlongEdRNS0_10CoordinateE[_ZNK4geos4geom11LineSegment10pointAlongEdRNS0_10CoordinateE]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xdd6): multiple definition of `geos::geom::LineSegment::setCoordinates(geos::geom::Coordinate const&, geos::geom::Coordinate const&)'
CMakeFiles/geos.dir/objects.a(LineSegment.cpp.obj):LineSegment.cpp:(.text$_ZN4geos4geom11LineSegment14setCoordinatesERKNS0_10CoordinateES4_[_ZN4geos4geom11LineSegment14setCoordinatesERKNS0_10CoordinateES4_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xefe): multiple definition of `geos::geom::LineSegment::getLength() const'
CMakeFiles/geos.dir/objects.a(Densifier.cpp.obj):Densifier.cpp:(.text$_ZNK4geos4geom11LineSegment9getLengthEv[_ZNK4geos4geom11LineSegment9getLengthEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x125c): multiple definition of `geos::geom::PrecisionModel::~PrecisionModel()'
CMakeFiles/geos.dir/objects.a(Geometry.cpp.obj):Geometry.cpp:(.text$_ZN4geos4geom14PrecisionModelD1Ev[_ZN4geos4geom14PrecisionModelD1Ev]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1268): multiple definition of `geos::geom::PrecisionModel::makePrecise(geos::geom::Coordinate*) const'
CMakeFiles/geos.dir/objects.a(GeometryFactory.cpp.obj):GeometryFactory.cpp:(.text$_ZNK4geos4geom14PrecisionModel11makePreciseEPNS0_10CoordinateE[_ZNK4geos4geom14PrecisionModel11makePreciseEPNS0_10CoordinateE]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x12c0): multiple definition of `geos::geom::PrecisionModel::getScale() const'
CMakeFiles/geos.dir/objects.a(Geometry.cpp.obj):Geometry.cpp:(.text$_ZNK4geos4geom14PrecisionModel8getScaleEv[_ZNK4geos4geom14PrecisionModel8getScaleEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x131a): multiple definition of `geos::geom::Envelope::getMaxY() const'
CMakeFiles/geos.dir/objects.a(InteriorPointArea.cpp.obj):InteriorPointArea.cpp:(.text$_ZNK4geos4geom8Envelope7getMaxYEv[_ZNK4geos4geom8Envelope7getMaxYEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1338): multiple definition of `geos::geom::Envelope::getMaxX() const'
CMakeFiles/geos.dir/objects.a(Envelope.cpp.obj):Envelope.cpp:(.text$_ZNK4geos4geom8Envelope7getMaxXEv[_ZNK4geos4geom8Envelope7getMaxXEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1356): multiple definition of `geos::geom::Envelope::getMinY() const'
CMakeFiles/geos.dir/objects.a(InteriorPointArea.cpp.obj):InteriorPointArea.cpp:(.text$_ZNK4geos4geom8Envelope7getMinYEv[_ZNK4geos4geom8Envelope7getMinYEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1374): multiple definition of `geos::geom::Envelope::getMinX() const'
CMakeFiles/geos.dir/objects.a(Envelope.cpp.obj):Envelope.cpp:(.text$_ZNK4geos4geom8Envelope7getMinXEv[_ZNK4geos4geom8Envelope7getMinXEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1390): multiple definition of `geos::geom::Envelope::intersects(geos::geom::Coordinate const&) const'
CMakeFiles/geos.dir/objects.a(PointLocator.cpp.obj):PointLocator.cpp:(.text$_ZNK4geos4geom8Envelope10intersectsERKNS0_10CoordinateE[_ZNK4geos4geom8Envelope10intersectsERKNS0_10CoordinateE]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1408): multiple definition of `geos::geom::Envelope::intersects(geos::geom::Envelope const&) const'
CMakeFiles/geos.dir/objects.a(Envelope.cpp.obj):Envelope.cpp:(.text$_ZNK4geos4geom8Envelope10intersectsERKS1_[_ZNK4geos4geom8Envelope10intersectsERKS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x142e): multiple definition of `geos::geom::Envelope::isNull() const'
CMakeFiles/geos.dir/objects.a(Envelope.cpp.obj):Envelope.cpp:(.text$_ZNK4geos4geom8Envelope6isNullEv[_ZNK4geos4geom8Envelope6isNullEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1450): multiple definition of `geos::geom::Envelope::intersects(geos::geom::Envelope const*) const'
CMakeFiles/geos.dir/objects.a(Envelope.cpp.obj):Envelope.cpp:(.text$_ZNK4geos4geom8Envelope10intersectsEPKS1_[_ZNK4geos4geom8Envelope10intersectsEPKS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x15c8): multiple definition of `geos::geom::Coordinate::setNull()'
CMakeFiles/geos.dir/objects.a(MinimumBoundingCircle.cpp.obj):MinimumBoundingCircle.cpp:(.text$_ZN4geos4geom10Coordinate7setNullEv[_ZN4geos4geom10Coordinate7setNullEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1606): multiple definition of `geos::geom::Coordinate::isNull() const'
CMakeFiles/geos.dir/objects.a(MinimumBoundingCircle.cpp.obj):MinimumBoundingCircle.cpp:(.text$_ZNK4geos4geom10Coordinate6isNullEv[_ZNK4geos4geom10Coordinate6isNullEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1666): multiple definition of `geos::geom::Coordinate::Coordinate(double, double, double)'
CMakeFiles/geos.dir/objects.a(Area.cpp.obj):Area.cpp:(.text$_ZN4geos4geom10CoordinateC1Eddd[_ZN4geos4geom10CoordinateC1Eddd]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x16aa): multiple definition of `geos::geom::Coordinate::equals2D(geos::geom::Coordinate const&) const'
CMakeFiles/geos.dir/objects.a(ConvexHull.cpp.obj):ConvexHull.cpp:(.text$_ZNK4geos4geom10Coordinate8equals2DERKS1_[_ZNK4geos4geom10Coordinate8equals2DERKS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x172c): multiple definition of `geos::geom::Coordinate::compareTo(geos::geom::Coordinate const&) const'
CMakeFiles/geos.dir/objects.a(ConvexHull.cpp.obj):ConvexHull.cpp:(.text$_ZNK4geos4geom10Coordinate9compareToERKS1_[_ZNK4geos4geom10Coordinate9compareToERKS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x185e): multiple definition of `geos::geom::Coordinate::distance(geos::geom::Coordinate const&) const'
CMakeFiles/geos.dir/objects.a(Centroid.cpp.obj):Centroid.cpp:(.text$_ZNK4geos4geom10Coordinate8distanceERKS1_[_ZNK4geos4geom10Coordinate8distanceERKS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1944): multiple definition of `geos::geom::Coordinate::hashCode(double)'
CMakeFiles/geos.dir/objects.a(Envelope.cpp.obj):Envelope.cpp:(.text$_ZN4geos4geom10Coordinate8hashCodeEd[_ZN4geos4geom10Coordinate8hashCodeEd]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1976): multiple definition of `geos::geom::CoordinateLessThen::operator()(geos::geom::Coordinate const*, geos::geom::Coordinate const*) const'
CMakeFiles/geos.dir/objects.a(ConvexHull.cpp.obj):ConvexHull.cpp:(.text$_ZNK4geos4geom18CoordinateLessThenclEPKNS0_10CoordinateES4_[_ZNK4geos4geom18CoordinateLessThenclEPKNS0_10CoordinateES4_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x19f1): multiple definition of `geos::geom::operator==(geos::geom::Coordinate const&, geos::geom::Coordinate const&)'
CMakeFiles/geos.dir/objects.a(Distance.cpp.obj):Distance.cpp:(.text$_ZN4geos4geomeqERKNS0_10CoordinateES3_[_ZN4geos4geomeqERKNS0_10CoordinateES3_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1a40): multiple definition of `geos::geom::GeometryFactory::getSRID() const'
CMakeFiles/geos.dir/objects.a(Geometry.cpp.obj):Geometry.cpp:(.text$_ZNK4geos4geom15GeometryFactory7getSRIDEv[_ZNK4geos4geom15GeometryFactory7getSRIDEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1a52): multiple definition of `geos::geom::GeometryFactory::getCoordinateSequenceFactory() const'
CMakeFiles/geos.dir/objects.a(ConvexHull.cpp.obj):ConvexHull.cpp:(.text$_ZNK4geos4geom15GeometryFactory28getCoordinateSequenceFactoryEv[_ZNK4geos4geom15GeometryFactory28getCoordinateSequenceFactoryEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1af4): multiple definition of `geos::geom::MultiLineString::MultiLineString(geos::geom::MultiLineString const&)'
CMakeFiles/geos.dir/objects.a(MultiLineString.cpp.obj):MultiLineString.cpp:(.text$_ZN4geos4geom15MultiLineStringC1ERKS1_[_ZN4geos4geom15MultiLineStringC1ERKS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1bd4): multiple definition of `geos::geom::MultiLineString::clone() const'
CMakeFiles/geos.dir/objects.a(MultiLineString.cpp.obj):MultiLineString.cpp:(.text$_ZNK4geos4geom15MultiLineString5cloneEv[_ZNK4geos4geom15MultiLineString5cloneEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1c34): multiple definition of `virtual thunk to geos::geom::MultiLineString::clone() const'
CMakeFiles/geos.dir/objects.a(MultiLineString.cpp.obj):MultiLineString.cpp:(.text$_ZTv0_n24_NK4geos4geom15MultiLineString5cloneEv[_ZTv0_n24_NK4geos4geom15MultiLineString5cloneEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1cce): multiple definition of `geos::geom::MultiPolygon::MultiPolygon(geos::geom::MultiPolygon const&)'
CMakeFiles/geos.dir/objects.a(MultiPolygon.cpp.obj):MultiPolygon.cpp:(.text$_ZN4geos4geom12MultiPolygonC1ERKS1_[_ZN4geos4geom12MultiPolygonC1ERKS1_]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1dae): multiple definition of `geos::geom::MultiPolygon::clone() const'
CMakeFiles/geos.dir/objects.a(MultiPolygon.cpp.obj):MultiPolygon.cpp:(.text$_ZNK4geos4geom12MultiPolygon5cloneEv[_ZNK4geos4geom12MultiPolygon5cloneEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1e0e): multiple definition of `virtual thunk to geos::geom::MultiPolygon::clone() const'
CMakeFiles/geos.dir/objects.a(MultiPolygon.cpp.obj):MultiPolygon.cpp:(.text$_ZTv0_n24_NK4geos4geom12MultiPolygon5cloneEv[_ZTv0_n24_NK4geos4geom12MultiPolygon5cloneEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1e18): multiple definition of `geos::geom::CoordinateArraySequenceFactory::create() const'
CMakeFiles/geos.dir/objects.a(CoordinateArraySequenceFactory.cpp.obj):CoordinateArraySequenceFactory.cpp:(.text$_ZNK4geos4geom30CoordinateArraySequenceFactory6createEv[_ZNK4geos4geom30CoordinateArraySequenceFactory6createEv]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1e7a): multiple definition of `geos::geom::CoordinateArraySequenceFactory::create(std::vector<geos::geom::Coordinate, std::allocator<geos::geom::Coordinate> >*, unsigned long long) const'
CMakeFiles/geos.dir/objects.a(CoordinateArraySequenceFactory.cpp.obj):CoordinateArraySequenceFactory.cpp:(.text$_ZNK4geos4geom30CoordinateArraySequenceFactory6createEPSt6vectorINS0_10CoordinateESaIS3_EEy[_ZNK4geos4geom30CoordinateArraySequenceFactory6createEPSt6vectorINS0_10CoordinateESaIS3_EEy]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1ee8): multiple definition of `geos::geom::CoordinateArraySequenceFactory::create(unsigned long long, unsigned long long) const'
CMakeFiles/geos.dir/objects.a(CoordinateArraySequenceFactory.cpp.obj):CoordinateArraySequenceFactory.cpp:(.text$_ZNK4geos4geom30CoordinateArraySequenceFactory6createEyy[_ZNK4geos4geom30CoordinateArraySequenceFactory6createEyy]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x1f56): multiple definition of `geos::geom::CoordinateArraySequenceFactory::create(geos::geom::CoordinateSequence const&) const'
CMakeFiles/geos.dir/objects.a(CoordinateArraySequenceFactory.cpp.obj):CoordinateArraySequenceFactory.cpp:(.text$_ZNK4geos4geom30CoordinateArraySequenceFactory6createERKNS0_18CoordinateSequenceE[_ZNK4geos4geom30CoordinateArraySequenceFactory6createERKNS0_18CoordinateSequenceE]+0x0): first defined here
CMakeFiles/geos.dir/objects.a(WKBReader.cpp.obj):WKBReader.cpp:(.text$_ZN4geos2io21ByteOrderDataInStreamC1EPSi[_ZN4geos2io21ByteOrderDataInStreamC1EPSi]+0x0): multiple definition of `geos::io::ByteOrderDataInStream::ByteOrderDataInStream(std::istream*)'
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xbc): first defined here
CMakeFiles/geos.dir/objects.a(WKBReader.cpp.obj):WKBReader.cpp:(.text$_ZN4geos2io21ByteOrderDataInStream11setInStreamEPSi[_ZN4geos2io21ByteOrderDataInStream11setInStreamEPSi]+0x0): multiple definition of `geos::io::ByteOrderDataInStream::setInStream(std::istream*)'
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0xf8): first defined here
CMakeFiles/geos.dir/objects.a(WKBReader.cpp.obj):WKBReader.cpp:(.text$_ZN4geos2io21ByteOrderDataInStream8setOrderEi[_ZN4geos2io21ByteOrderDataInStream8setOrderEi]+0x0): multiple definition of `geos::io::ByteOrderDataInStream::setOrder(int)'
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x114): first defined here
CMakeFiles/geos.dir/objects.a(WKBReader.cpp.obj):WKBReader.cpp:(.text$_ZN4geos2io21ByteOrderDataInStream8readByteEv[_ZN4geos2io21ByteOrderDataInStream8readByteEv]+0x0): multiple definition of `geos::io::ByteOrderDataInStream::readByte()'
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x12c): first defined here
CMakeFiles/geos.dir/objects.a(WKBReader.cpp.obj):WKBReader.cpp:(.text$_ZN4geos2io21ByteOrderDataInStream7readIntEv[_ZN4geos2io21ByteOrderDataInStream7readIntEv]+0x0): multiple definition of `geos::io::ByteOrderDataInStream::readInt()'
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x23a): first defined here
CMakeFiles/geos.dir/objects.a(WKBReader.cpp.obj):WKBReader.cpp:(.text$_ZN4geos2io21ByteOrderDataInStream10readDoubleEv[_ZN4geos2io21ByteOrderDataInStream10readDoubleEv]+0x0): multiple definition of `geos::io::ByteOrderDataInStream::readDouble()'
CMakeFiles/geos.dir/objects.a(inlines.cpp.obj):inlines.cpp:(.text+0x472): first defined here
CMakeFiles/geos.dir/objects.a(LengthIndexOfPoint.cpp.obj):LengthIndexOfPoint.cpp:(.text$_ZNK4geos4geom11LineSegment8distanceERKNS0_10CoordinateE[_ZNK4geos4geom11LineSegment8distanceERKNS0_10CoordinateE]+0x0): multiple definition of `geos::geom::LineSegment::distance(geos::geom::Coordinate const&) const'

So solution was to either restore the old name or change my script to using -D

-DDISABLE_GEOS_INLINE=ON

I opted for reverting to the old behavior since pramsey didn't seem to care and the new would be a breaking change. at https://git.osgeo.org/gitea/geos/geos/commit/1fb11b298d4890afb6a86cdf3325b1272a5def1c

comment:7 Changed 6 months ago by Regina Obe <lr@…>

In 39ce10e/git:

Put back DISABLE_GEOS_INLINE and take out GEOS_ENABLE_INLINE. Has clearer meaning though a breaking change. References #970

Note: See TracTickets for help on using tickets.