Forum Message

 

 

We have moved the forum to https://forum.ngsolve.org . This is an archived version of the topics until 05/05/23. All the topics were moved to the new forum and conversations can be continued there. This forum is just kept as legacy to not invalidate old links. If you want to continue a conversation just look for the topic in the new forum.

Notice

The forum is in read only mode.

Compile error caused in meshaccess.cpp when building ngsolve

More
6 years 1 month ago #401 by massing
Dear all,

Today, I tried to update my ngsuite installation (starting with a fresh directory and repo clones
using the master branch) on my Debian 9.3 (stable) with the following features enabled:

Enabled functionality:

GUI: ............... ON
LAPACK: ............ ON
MKL: ............... OFF
PYTHON: ............ ON
MPI: ............... ON
CUDA: ..............
MUMPS: ............. OFF
PARDISO: ........... OFF
INTEL_MIC: ......... OFF
VTUNE: ............. OFF
VAMPIRTRACE: ....... OFF


But unfortunately, I later ran into a compilation error:


[ 44%] Built target install_netgen
[ 50%] Performing check_submodules1 step for 'ngsolve'
[ 55%] Performing build step for 'ngsolve'
-- Found Git: /usr/bin/git (found version "2.11.0")
[ 0%] Built target generate_version_file
[ 12%] Built target ngstd
[ 19%] Built target ngbla
[ 20%] Built target parallel
[ 35%] Built target ngla
[ 64%] Built target ngfem
[ 65%] Built target ngmg
[ 67%] Building CXX object comp/CMakeFiles/ngcomp.dir/meshaccess.cpp.o
/work/andre/software/ngsuite/tmp/ngsolve-src/comp/meshaccess.cpp: In member function ‘void ngcomp::MeshAccess::Refine()’:
/work/andre/software/ngsuite/tmp/ngsolve-src/comp/meshaccess.cpp:1751:65: error: no matching function for call to ‘netgen::Ngx_Mesh::Refine(NG_REFINEMENT_TYPE, void (*)(std::function<void(int, int)>), void (*)(std::__cxx11::string, bool))’
mesh.Refine(NG_REFINE_H, &NGSolveTaskManager, &NGSolveTracer);
^
In file included from /work/andre/software/ngsuite/tmp/ngsolve-src/comp/meshaccess.hpp:12:0,
from /work/andre/software/ngsuite/tmp/ngsolve-src/comp/comp.hpp:52,
from /work/andre/software/ngsuite/tmp/ngsolve-src/comp/meshaccess.cpp:11:
/work/andre/software/ngsuite/ngsolve-install/include/nginterface_v2.hpp:278:10: note: candidate: void netgen::Ngx_Mesh::Refine(NG_REFINEMENT_TYPE, void (*)(std::function<void(int, int)>))
void Refine (NG_REFINEMENT_TYPE reftype,
^~~~~~
/work/andre/software/ngsuite/ngsolve-install/include/nginterface_v2.hpp:278:10: note: candidate expects 2 arguments, 3 provided
comp/CMakeFiles/ngcomp.dir/build.make:374: recipe for target 'comp/CMakeFiles/ngcomp.dir/meshaccess.cpp.o' failed

Is that an expected compilation error in current master?
BTW, git blame tells me that this change introduced here

36eaf018c (Joachim Schöberl 2018-01-04 11:07:22 +0100 1751)
with the commit message "paje-tracer to netgen"

Thanks a lot and best,
Andre
More
6 years 1 month ago #402 by schruste
Hi André,

Did you make sure, that you updated the submodules, especially netgen?
Also: did you make sure that the includes that he is looking at are not from older installation? If in doubt, remove also the old installations.
And last: Have you tried the same without mpi-support for a start?

Best,
Christoph
More
6 years 1 month ago #403 by massing
Yes, my bad, I forget to deactivate the sourcing of my old ngsolve installation in my .bashrc, thanks for the fast reply! Now everything compiles fine and I can run the tutorials with both the netgen and ngspy command. Only catch right now is that program execution crashes if I involve more than one mpi processor, but I will report this in a separate thread. Thanks a lot for the help so far!
Time to create page: 0.144 seconds