isciences / exactextract

Fast and accurate raster zonal statistics
Apache License 2.0
233 stars 31 forks source link

Test fails on Mac M3 #94

Open tokicnikolaus opened 4 months ago

tokicnikolaus commented 4 months ago

Docker build is failing for the current master:

54.46 [ 85%] Built target catch_tests
54.47 [ 87%] Building CXX object python/CMakeFiles/_exactextract.dir/src/pybindings/bindings.cpp.o
55.31 [ 89%] Building CXX object python/CMakeFiles/_exactextract.dir/src/pybindings/feature_bindings.cpp.o
56.62 [ 90%] Building CXX object python/CMakeFiles/_exactextract.dir/src/pybindings/feature_source_bindings.cpp.o
57.70 [ 92%] Building CXX object python/CMakeFiles/_exactextract.dir/src/pybindings/operation_bindings.cpp.o
59.42 [ 94%] Building CXX object python/CMakeFiles/_exactextract.dir/src/pybindings/processor_bindings.cpp.o
60.97 [ 96%] Building CXX object python/CMakeFiles/_exactextract.dir/src/pybindings/raster_source_bindings.cpp.o
62.40 [ 98%] Building CXX object python/CMakeFiles/_exactextract.dir/src/pybindings/writer_bindings.cpp.o
63.74 [100%] Linking CXX shared module exactextract/_exactextract.cpython-311-aarch64-linux-gnu.so
63.93 lto-wrapper: warning: using serial compilation of 6 LTRANS jobs
63.93 lto-wrapper: note: see the '-flto' option documentation for more information
67.10 [100%] Built target _exactextract
67.11 Test project /cmake-build-release
67.11     Start 1: cli_tests
68.00 1/3 Test #1: cli_tests ........................   Passed    0.88 sec
68.00     Start 2: catch_tests
68.04 2/3 Test #2: catch_tests ......................***Failed    0.05 sec
68.04
68.04 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
68.04 catch_tests is a Catch v2.13.8 host application.
68.04 Run with -? for options
68.04
68.04 -------------------------------------------------------------------------------
68.04 Robustness regression test #7
68.04 -------------------------------------------------------------------------------
68.04 /exactextract/test/test_raster_cell_intersection.cpp:605
68.04 ...............................................................................
68.04
68.04 /exactextract/test/test_raster_cell_intersection.cpp:621: FAILED:
68.04   CHECK( (frac >= 0 && frac <= max_possible_frac) )
68.04 with expansion:
68.04   false
68.04
68.04 ===============================================================================
68.04 test cases:   187 |   186 passed | 1 failed
68.04 assertions: 10031 | 10030 passed | 1 failed
68.04
68.04
68.04     Start 3: pybindings
68.38 3/3 Test #3: pybindings .......................   Passed    0.34 sec
68.38
68.38 67% tests passed, 1 tests failed out of 3
68.38
68.38 Total Test time (real) =   1.27 sec
68.38
68.38 The following tests FAILED:
68.38     2 - catch_tests (Failed)
68.38 Errors while running CTest
------
Dockerfile:23
--------------------
  22 |
  23 | >>> RUN mkdir /cmake-build-release && \
  24 | >>>     cd /cmake-build-release && \
  25 | >>>     cmake -DCMAKE_BUILD_TYPE=Release \
  26 | >>>           -DBUILD_CLI=YES \
  27 | >>>           -DBUILD_DOC=NO \
  28 | >>>           -DBUILD_PYTHON=YES \
  29 | >>>           /exactextract && \
  30 | >>>     cmake --build . && \
  31 | >>>     ctest --output-on-failure && \
  32 | >>>     cmake --install . && \
  33 | >>>     rm -rf /cmake-build-release
  34 |
--------------------
ERROR: failed to solve: process "/bin/sh -c mkdir /cmake-build-release &&     cd /cmake-build-release &&     cmake -DCMAKE_BUILD_TYPE=Release           -DBUILD_CLI=YES           -DBUILD_DOC=NO           -DBUILD_PYTHON=YES           /exactextract &&     cmake --build . &&     ctest --output-on-failure &&     cmake --install . &&     rm -rf /cmake-build-release" did not complete successfully: exit code: 8

Let me know if I need to send anything else.

dbaston commented 4 months ago

I can't reproduce that. Are you on arm64 by chance?

tokicnikolaus commented 4 months ago

I literally just switched from Ubuntu Intel to M3 Mac, and you're right, that's the issue, I tried to build it in GitHub actions in my repo, and the build works.

Still, any suggestions on how to build the image on ARM?

dbaston commented 4 months ago

Remove the ctest line for now.