I may have to tweak the solvers a bit. So I should learn how to build from source rather than use a virtual machine.
First I did a minimal build without elmerGUI and MPI along the lines of https://www.csc.fi/web/elmer/sources-and-compilation
Everything went smoothly, very few warnings, no errors. The tests of ctest went fine.
Then I fired off cmake-gui in the build directory and tried to work through the additional options,. These are the ones that worked. Some of them needed a little help:
- WITH_ELMERGUI → Debian has dropped QT4 in fovour of QT5. Cmake configuration needs the switch "WITH_QT5=true" to look for the correct libraries. I was able to add the switch with the "add entry" button.
- WITH_QWT → required to set a path "QWT_LIBRARY=/usr/lib/libqwt-qt5.so.6" in the "advanced" section of the options (there is an "advanced optins" button in the top row of cmake-gui)
- WITH_HYPRE → required "Hypre_INCLUDE_DIR=/usr/include/hypre" in the "advanced section of the options
- WITH_MKL → required "MKL_INCLUDE_DIR=/usr/include/mkl/" in the "advanced section of the options. I also checked several MKL options that appeared in the advanced section.
- WITH_MATC got me this compile error:
Code: Select all
/usr/local/src/elmer2020/elmerfem/ElmerGUI/Application/vtkpost/matc.cpp: In constructor ‘Matc::Matc(QWidget*)’: /usr/local/src/elmer2020/elmerfem/ElmerGUI/Application/vtkpost/matc.cpp:73:29: error: ‘FALSE’ was not declared in this scope 73 | com_init( (char *)"grad", FALSE, FALSE, com_grad, 1, 1, | ^~~~~
- WITH_PYTHONQT → told me that it does not like QT5
- WITH_ELMERGUITESTER produced build errors:
Code: Select all
[ 22%] Generating ui_mainform.h /bin/sh: 1: -o: not found [ 23%] Built target ElmerGrid make: *** [ElmerGUItester/CMakeFiles/ElmerGUItester.dir/build.make:62: ElmerGUItester/ui_mainform.h] Error 127 make: *** [CMakeFiles/Makefile2:23090: ElmerGUItester/CMakeFiles/ElmerGUItester.dir/all] Error 2 make: *** Waiting for unfinished jobs.... [ 60%] Built target umfpack [ 65%] Built target ng make: *** [Makefile:163: all] Error 2
- WITH_FETI4I → "Cannot find source file: //feti4i_mod.F90" This source file does not seem to be part of any package in any distro the internet search machines are aware of. I'd advocate to remove the option from the cmake config if it cannot be satisfied anyway.
- WITH_ELMERICE → cmake-configure misses several path (NetCDF_INCLUDE_DIR, NetCDF_LIBRARY, NetCDFF_LIBRARY
HDF5_INCLUDE_DIR, HDF5_LIBRARY, HDF5F_LIBRARY) The debian packages libnetcdf* and libhdf5* are installed on my system, though. This includes the *-dev packages, too.
- WITH_ZOLTAN → errors on build (I have every Debian package that contains "zoltan" in its name installed):
Somewhat irritatingly the last two lines did not go away after I deatrivated the zoltan option in cmake-gui. I had to clear the cmake cache and restart.
Code: Select all
Building Zoltan mesh repartitioner CMake Error at CMakeLists.txt:295 (ADD_SUBDIRECTORY): The source directory /usr/local/src/elmer2020/elmerfem/contrib/Zoltan_v3.83 does not contain a CMakeLists.txt file. (...) CMake Error at fem/src/CMakeLists.txt:162 (ADD_DEPENDENCIES): ADD_DEPENDENCIES called with incorrect number of arguments
I tried ctest again. Unfortunately, with all the shiny new features compiled in 113 tests out of 713 failed. (Will list the failed tests in the next post)