Subject: bug#47561: MIA 2.4.6 fails to build

From: Ludovic Courtès <[email-masked]>
Date: Fri, 02 Apr 2021 09:09:17 +0200

MIA 2.4.6 fails to build as of 9098745b181b3022587a35afd255f7ff1d41ac86
presumably due to CMake shenanigans as reported here:

  https://issues.guix.gnu.org/46724#9

Build failure looks like this:

--8<---------------cut here---------------start------------->8---
[ 13%] Building CXX object mia/core/CMakeFiles/test-core.dir/test_core_combined.cc.o
cd /tmp/guix-build-mia-2.4.6.drv-0/build/mia/core && /gnu/store/rn75fm7adgx3pw5j8pg3bczfqq1y17lk-gcc-7.5.0/bin/c++  -DBOOST_ALL_DYN_LINK -DBOOST_ALL_NO_LIB -DBOOST_FILESYSTEM_DYN_LINK -DBOOST_FILESYSTEM_VERSION=3 -DBOOST_SYSTEM_DYN_LINK -DBOOST_UNIT_TEST_FRAMEWORK_DYN_LINK -DHAVE_CONFIG_H -I/gnu/store/n50ikpnyzdda0zklwnmqasklcrif2csg-eigen-3.3.8/include/eigen3 -I/gnu/store/c8w9z48vvx2a3q3k44ch9yn00wk1qwhb-libxml2-2.9.10/include/libxml2 -I/tmp/guix-build-mia-2.4.6.drv-0/build -I/tmp/guix-build-mia-2.4.6.drv-0/mia-2.4.6  -fpermissive   -fvisibility=hidden -O2 -g -DNDEBUG   -o CMakeFiles/test-core.dir/test_core_combined.cc.o -c /tmp/guix-build-mia-2.4.6.drv-0/mia-2.4.6/mia/core/test_core_combined.cc
/tmp/guix-build-mia-2.4.6.drv-0/mia-2.4.6/addons/vtk/vtkmesh.cc: In function ‘void vtkmia::read_normals(mia::CTriangleMesh&, vtkPointData&)’:
/tmp/guix-build-mia-2.4.6.drv-0/mia-2.4.6/addons/vtk/vtkmesh.cc:179:12: error: ‘class vtkFloatArray’ has no member named ‘GetTupleValue’; did you mean ‘GetValue’?
   normals->GetTupleValue(i, &is->x);
            ^~~~~~~~~~~~~
            GetValue
/tmp/guix-build-mia-2.4.6.drv-0/mia-2.4.6/addons/vtk/vtkmesh.cc: In function ‘void vtkmia::read_colors(mia::CTriangleMesh&, vtkPointData&)’:
/tmp/guix-build-mia-2.4.6.drv-0/mia-2.4.6/addons/vtk/vtkmesh.cc:211:11: error: ‘class vtkFloatArray’ has no member named ‘GetTupleValue’; did you mean ‘GetValue’?
   colors->GetTupleValue(i, &is->x);
           ^~~~~~~~~~~~~
           GetValue
make[2]: *** [addons/vtk/CMakeFiles/mesh-io-vtkmesh-common.dir/build.make:66: addons/vtk/CMakeFiles/mesh-io-vtkmesh-common.dir/vtkmesh.cc.o] Error 1
make[2]: Leaving directory '/tmp/guix-build-mia-2.4.6.drv-0/build'
--8<---------------cut here---------------end--------------->8---

The problem here is what we’re missing -I flags for VTK, which might be
a CMake incompatibility issue.

Thoughts?

Ludo’.