Make check on Ubuntu 23.10 fails testvtk.edp

Hello everyone,

I’m having a problem with make check in the installation of FreeFEM on Ubuntu 23.10. When I do the command make -j4 check, I get the following error:

Making check in 3dSurf
make[2]: Entering directory '/home/sgau/lib/FREEFEM/examples/3dSurf'
make  check-TESTS
make[3]: Entering directory '/home/sgau/lib/FREEFEM/examples/3dSurf'
make[4]: Entering directory '/home/sgau/lib/FREEFEM/examples/3dSurf'
PASS: buildMeshSfromMesh3.edp
PASS: glu3DSurf.edp
PASS: Laplace3dSP2.edp
PASS: LaplacianSurf.edp
PASS: operatorsOnMeshS.edp
PASS: extractSurfFromMesh3.edp
../../bin/test-driver-ff: line 126: 54197 Segmentation fault      (core dumped) ${TEST_FFPP} ${FLAGS_FFPP_B} "$@" ${FLAGS_FFPP_A} > $log_file 2>&1
FAIL: testvtk.edp
PASS: LapP1withflux.edp
PASS: cauchyproblem.edp
PASS: periodicS.edp
PASS: Connectivite-S.edp
PASS: LaplaceRT1Surf.edp
PASS: buildmeshS.edp
PASS: HeatTorus.edp
PASS: Pinocchio.edp
============================================================================
Testsuite summary for FreeFEM 4.14
============================================================================
# TOTAL: 15
# PASS:  14
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0
============================================================================
See examples/3dSurf/test-suite.log
Please report to frederic.hecht@sorbonne-universite.fr
============================================================================

In the testsuite.log file there is written the following:

==================================================
   FreeFEM 4.14: examples/3dSurf/test-suite.log
==================================================

# TOTAL: 15
# PASS:  14
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

PASS: buildMeshSfromMesh3.edp
=============================

-- FreeFem++ v4.14 (Tue Dec 26 09:55:30 AM CET 2023 - git no git)
   file : ./buildMeshSfromMesh3.edp
 Load: lg_fem lg_mesh lg_mesh3 eigenvalue 
    1 : load "msh3"
    2 : //load "medit"
    3 : 
    4 : //load "gmsh"
    5 : //load "iovtk"
    6 : 
    7 : int n= 10;
    8 : int nvb = (n+1)^3 - (n-1)^3;// Nb boundary vertices
    9 : int ntb = n*n*12; // Nb of Boundary triangle 
   10 : mesh3 Th=cube(n,n,n);
   11 : Th = buildBdMesh(Th); // build the surface mesh
   12 : 
   13 : 
   14 : int[int] ref2=[1,0,2,0];
   15 : mesh3 Thm=change(Th,label=ref2);
   16 : 
   17 : 
   18 : meshS Th1 = Th.Gamma;
   19 : 
   20 : assert(Th1.nv==602); 
   21 : assert(Th1.nt==1200);
   22 : assert(Th1.nbe==120);
   23 : 
   24 : plot(Th1);
   25 : savemesh(Th1, "Th1.mesh");
   26 : 
   27 : meshS Th2 = readmeshS("Th1.mesh");
   28 : 
   29 : assert(Th1.nv==Th2.nv); 
   30 : assert(Th1.nt==Th2.nt);
   31 : assert(Th1.nbe==Th2.nbe);
   32 :  sizestack + 1024 =1896  ( 872 )

  -- Cube  nv=1331 nt=6000 nbe=1200 kind= 6
Build meshS from mesh3.... 
  Plot::  Sorry no ps version for this type of plot 50
read meshS ok 0surface Mesh, num Triangles:= 1200, num Vertice:= 602 num boundary Edges:= 120
  -- MeshS : Th1.mesh, space dimension 3, num Triangle elts 1200, num Vertice 602 num Bordary elts 120
times: compile 0.117124s, execution 0.210865s,  mpirank:0
 CodeAlloc : nb ptr  3945,  size :527640 mpirank: 0
Ok: Normal End

PASS: Laplace3dSP2.edp
======================

-- FreeFem++ v4.14 (Tue Dec 26 09:55:30 AM CET 2023 - git no git)
   file : ./Laplace3dSP2.edp
 Load: lg_fem lg_mesh lg_mesh3 eigenvalue 
    1 : load "gmsh"
    2 : 
    3 : load "msh3"
    4 : int nn=20;
    5 : mesh Th2=square(nn,nn,region=0);
    6 : fespace Vh2(Th2,P2);
    7 : Vh2 ux,uz,p2;
    8 : int[int] rup=[0,2],  rdown=[0,1], rmid=[1,1,2,1,3,1,4,1];
    9 : real zmin=0,zmax=1;
   10 : mesh3 Th=buildlayers(Th2,nn,
   11 :   zbound=[zmin,zmax],
   12 :   labelmid=rmid,
   13 :   reffaceup = rup,
   14 :   reffacelow = rdown);
   15 : 
   16 : Th = buildBdMesh(Th); // build the surface mesh
   17 : meshS ThS= Th.Gamma;
   18 : 
   19 : fespace Vh(ThS,P2);
   20 : Vh u,v;
   21 : 
   22 : func ue =   2*x*x + 3*y*y + 4*z*z + 5*x*y+6*x*z+1;
   23 : func uex=   4*x+  5*y+6*z;
   24 : func uey=   6*y + 5*x;
   25 : func uez=   8*z +6*x;
   26 : func f= -18. ;
   27 : 
   28 : macro Grad3(u) [dx(u),dy(u),dz(u)]   )  // EOM
   29 : // 
   30 : problem Lap3dS(u,v,solver=CG)  =
   31 :   int2d(ThS)(Grad3(v)    [dx(v),dy(v),dz(v)]  ' *Grad3(u)    [dx(u),dy(u),dz(u)]  ) //') for emacs
   32 :   + int1d(ThS,2)(u*v)
   33 :   - int2d(ThS)(f*v)
   34 :   - int1d(ThS,2) ( ue*v + (uex*N.x +uey*N.y +uez*N.z)*v )
   35 :   + on(1,u=ue);
   36 : Lap3dS;
   37 : 
   38 : plot(u,wait=1);
   39 : 
   40 : 
   41 : savegmsh(ThS,"ThS");
   42 : 
   43 :  
   44 : 
   45 :  sizestack + 1024 =7088  ( 6064 )

  -- Square mesh : nb vertices  =441 ,  nb triangles = 800 ,  nb boundary edges 80
Build meshS from mesh3.... 
  -- Build Nodes/DF on mesh :   n.v. 2402, n. elmt. 4800, n b. elmt. 240
     nb of Nodes 9602    nb of DoF   9602  DFon=1100
  -- FESpace: Nb of Nodes 9602 Nb of DoF 9602
 GC:  converge after 118 g=2.9998e-08 rho= 1.56891 gamma= 0.657623
  -- Solve : 
          min 0.989202  max 21
  Plot::  Sorry no ps version for this type of plot 8
times: compile 0.119846s, execution 1.63546s,  mpirank:0
 CodeAlloc : nb ptr  4158,  size :540088 mpirank: 0
Ok: Normal End

FAIL: testvtk.edp
=================

-- FreeFem++ v4.14 (Tue Dec 26 09:55:30 AM CET 2023 - git no git)
   file : ./testvtk.edp
 Load: lg_fem lg_mesh lg_mesh3 eigenvalue 
    1 : // basic example io vtk for meshS/meshL
    2 : load "iovtk" load: iovtk 

    3 : load "msh3"
    4 : 
    5 : mesh Th = square(10,10);
    6 : savevtk("Th.vtk",Th,bin=1); 
    7 : mesh Th2=vtkload("Th.vtk")Load mesh given by VTK 
;
    8 : meshS ThS = square3(10,10);
    9 : 
   10 : savevtk("ThS.vtk",ThS,bin=0); 
   11 : savevtk("ThS.vtu",ThS,bin=1);
   12 : meshS ThS2=vtkloadS("ThS.vtk")Load mesh given by VTK

I do not know how to deal with this and I’m looking forward to your help.

Thank you so much for reading and for your help.

Best wishes,

Gabriel

I will try under ubuntu machine to see but my ubuntu see 20.04

Can you launch under gdb to see where is the error?

I tried the following command make check RUNTESTFLAGS=“–target_board=native-gdbserver” FORCE_PARALLEL=1, but I cannot see the error. Is there another command in linux to launch under gdb? I’m sorry, but I’m not so expert on the use of gdb.

ON the machine where you do the compilation.
first try on a terminal , if the command gdb is install
by enter gdb in the command line terminal.

after go in the source directory
afetr do
cd examples/3dSurf/

to try without freefem++

…/…/src/FreeFem++ ./buildMeshSfromMesh3.edp -nw

to try with the debugger

gdb …/…/src/FreeFem++ ./buildMeshSfromMesh3.edp -nw
run

I tried and I got the following:

(gdb) r
Starting program: /home/sgau/lib/FREEFEM/src/nw/FreeFem++ 
[Thread debugging using libthread_db enabled]                           
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff35166c0 (LWP 6477)]                                  
[New Thread 0x7ffff2d156c0 (LWP 6478)]
[New Thread 0x7fffea5146c0 (LWP 6479)]
[New Thread 0x7fffd9d136c0 (LWP 6480)]
[New Thread 0x7fffd95126c0 (LWP 6481)]
[New Thread 0x7fffd0d116c0 (LWP 6482)]
[New Thread 0x7fffc05106c0 (LWP 6483)]
[New Thread 0x7fffb7d0f6c0 (LWP 6484)]
[New Thread 0x7fffaf50e6c0 (LWP 6485)]
[New Thread 0x7fffaed0d6c0 (LWP 6486)]
[New Thread 0x7fffa650c6c0 (LWP 6487)]
[New Thread 0x7fff9dd0b6c0 (LWP 6488)]
[New Thread 0x7fff9550a6c0 (LWP 6489)]
[New Thread 0x7fff8cd096c0 (LWP 6490)]
[New Thread 0x7fff845086c0 (LWP 6491)]
[New Thread 0x7fff7bd076c0 (LWP 6492)]
[New Thread 0x7fff735066c0 (LWP 6493)]
[New Thread 0x7fff62d056c0 (LWP 6494)]
[New Thread 0x7fff5a5046c0 (LWP 6495)]
[Detaching after vfork from child process 6496]
/home/sgau/lib/FREEFEM/src/nw/FreeFem++ - version 4.14 (Thu Dec 28 10:23:40 AM CET 2023 - git no git) 64bits
License: LGPL 3+ (https://www.gnu.org/licenses/lgpl-3.0.en.html)
Usage: /home/sgau/lib/FREEFEM/src/nw/FreeFem++ [FreeFEM arguments] filename [script arguments]
FreeFEM arguments:
	-f:     [filename]  script file name
	-v:     [verbosity] level of FreeFEM output (0 - 1000000)
	-nw:                no graphics
	-wg:                with graphics
	-ne:                no edp script output
	-cd:                change directory to script directory
	-cdtmp:             change directory to /tmp
	-jc:                just compile
	-ns:                same as -ne
	-nowait:            do not wait graphics at the end
	-nc:                without console (MS Windows only)
	-log:               with console (MS Windows only)
	-wait:              wait graphics at the end
	-fglut: [filename]  redirect graphics in file
	-glut:  [command]   use custom glut
	-gff:   [command]   use custom glut (with space quoting)
	-check_plugin [plugin1,plugin2,...]        just try if this plugins are correct
	-?:                 show help

with default ffglut: ffglut

FreeFEM website: https://freefem.org/
FreeFEM documentation: https://doc.freefem.org/
FreeFEM forum: https://community.freefem.org/
FreeFEM modules: https://modules.freefem.org/

Please cite us in your research papers and add a link to FreeFEM on your personal website
@article{FreeFEM,
	AUTHOR = {Hecht, F.},
	TITLE = {New development in FreeFem++},
	JOURNAL = {J. Numer. Math.},
	FJOURNAL = {Journal of Numerical Mathematics},
	VOLUME = {20}, YEAR = {2012},
	NUMBER = {3-4}, PAGES = {251--265},
	ISSN = {1570-2820},
	MRCLASS = {65Y15},
	MRNUMBER = {3043640},
	URL = {https://freefem.org/}
}
sh: 1: ffglut: not found
[Thread 0x7fff5a5046c0 (LWP 6495) exited]
[Thread 0x7fff62d056c0 (LWP 6494) exited]
[Thread 0x7fff735066c0 (LWP 6493) exited]
[Thread 0x7fff7bd076c0 (LWP 6492) exited]
[Thread 0x7fff845086c0 (LWP 6491) exited]
[Thread 0x7fff8cd096c0 (LWP 6490) exited]
[Thread 0x7fff9550a6c0 (LWP 6489) exited]
[Thread 0x7fff9dd0b6c0 (LWP 6488) exited]
[Thread 0x7fffa650c6c0 (LWP 6487) exited]
[Thread 0x7fffaed0d6c0 (LWP 6486) exited]
[Thread 0x7fffaf50e6c0 (LWP 6485) exited]
[Thread 0x7fffb7d0f6c0 (LWP 6484) exited]
[Thread 0x7fffc05106c0 (LWP 6483) exited]
[Thread 0x7fffd0d116c0 (LWP 6482) exited]
[Thread 0x7fffd95126c0 (LWP 6481) exited]
[Thread 0x7fffd9d136c0 (LWP 6480) exited]
[Thread 0x7fffea5146c0 (LWP 6479) exited]
[Thread 0x7ffff2d156c0 (LWP 6478) exited]
[Thread 0x7ffff35166c0 (LWP 6477) exited]
[Inferior 1 (process 6476) exited with code 01]

to have the exemple and no graphics
in gdb do

run /home/sgau/lib/FREEFEM/examples/3dSurf/buildMeshSfromMesh3.edp -nw

I run it and I got the following error:

[New Thread 0x7ffff35166c0 (LWP 5513)]                                          
[New Thread 0x7ffff2d156c0 (LWP 5514)]
[New Thread 0x7fffea5146c0 (LWP 5515)]
[New Thread 0x7fffe1d136c0 (LWP 5516)]
[New Thread 0x7fffd95126c0 (LWP 5517)]
[New Thread 0x7fffd0d116c0 (LWP 5518)]
[New Thread 0x7fffc05106c0 (LWP 5519)]
[New Thread 0x7fffbfd0f6c0 (LWP 5520)]
[New Thread 0x7fffb750e6c0 (LWP 5521)]
[New Thread 0x7fffaed0d6c0 (LWP 5522)]
[New Thread 0x7fffa650c6c0 (LWP 5523)]
[New Thread 0x7fff95d0b6c0 (LWP 5524)]
[New Thread 0x7fff9550a6c0 (LWP 5525)]
[New Thread 0x7fff8cd096c0 (LWP 5526)]
[New Thread 0x7fff845086c0 (LWP 5527)]
[New Thread 0x7fff7bd076c0 (LWP 5528)]
[New Thread 0x7fff6b5066c0 (LWP 5529)]
[New Thread 0x7fff62d056c0 (LWP 5530)]
[New Thread 0x7fff5a5046c0 (LWP 5531)]
-- FreeFem++ v4.14 (Thu Dec 28 10:23:40 AM CET 2023 - git no git)
   file : /home/sgau/lib/FREEFEM/examples/3dSurf/buildMeshSfromMesh3.edp
 Load: lg_fem lg_mesh lg_mesh3 eigenvalue 
    1 : load "msh3"
Load error: msh3
	 fail: 
 dlerror : ./msh3.so: cannot open shared object file: No such file or directory
list prefix: '' './' list suffix: '' , '.so' 
  current line = 1
Load error : msh3
	line number :1, msh3
error Load error : msh3
	line number :1, msh3
 code = 2 mpirank: 0
[Thread 0x7fff5a5046c0 (LWP 5531) exited]
[Thread 0x7fff62d056c0 (LWP 5530) exited]
[Thread 0x7fff6b5066c0 (LWP 5529) exited]
[Thread 0x7fff7bd076c0 (LWP 5528) exited]
[Thread 0x7fff845086c0 (LWP 5527) exited]
[Thread 0x7fff8cd096c0 (LWP 5526) exited]
[Thread 0x7fff9550a6c0 (LWP 5525) exited]
[Thread 0x7fff95d0b6c0 (LWP 5524) exited]
[Thread 0x7fffa650c6c0 (LWP 5523) exited]
[Thread 0x7fffaed0d6c0 (LWP 5522) exited]
[Thread 0x7fffb750e6c0 (LWP 5521) exited]
[Thread 0x7fffbfd0f6c0 (LWP 5520) exited]
[Thread 0x7fffc05106c0 (LWP 5519) exited]
[Thread 0x7fffd0d116c0 (LWP 5518) exited]
[Thread 0x7fffd95126c0 (LWP 5517) exited]
[Thread 0x7fffe1d136c0 (LWP 5516) exited]
[Thread 0x7fffea5146c0 (LWP 5515) exited]
[Thread 0x7ffff2d156c0 (LWP 5514) exited]
[Thread 0x7ffff35166c0 (LWP 5513) exited]
[Inferior 1 (process 5509) exited with code 02]

please go in directory before debugging

cd /home/sgau/lib/FREEFEM/examples/3dSurf/

or go in directory (the place of lib msh3.so )
cd /home/sgau/lib/FREEFEM/plugin/seq

Oh, sorry. I have rerun it and I got the following:

[New Thread 0x7ffff35166c0 (LWP 9171)]                                          
[New Thread 0x7ffff2d156c0 (LWP 9172)]
[New Thread 0x7fffea5146c0 (LWP 9173)]
[New Thread 0x7fffe1d136c0 (LWP 9174)]
[New Thread 0x7fffd15126c0 (LWP 9175)]
[New Thread 0x7fffc8d116c0 (LWP 9176)]
[New Thread 0x7fffc05106c0 (LWP 9177)]
[New Thread 0x7fffbfd0f6c0 (LWP 9178)]
[New Thread 0x7fffaf50e6c0 (LWP 9179)]
[New Thread 0x7fffaed0d6c0 (LWP 9180)]
[New Thread 0x7fffa650c6c0 (LWP 9181)]
[New Thread 0x7fff9dd0b6c0 (LWP 9182)]
[New Thread 0x7fff8d50a6c0 (LWP 9183)]
[New Thread 0x7fff8cd096c0 (LWP 9184)]
[New Thread 0x7fff7c5086c0 (LWP 9185)]
[New Thread 0x7fff73d076c0 (LWP 9186)]
[New Thread 0x7fff6b5066c0 (LWP 9187)]
[New Thread 0x7fff62d056c0 (LWP 9188)]
[New Thread 0x7fff5a5046c0 (LWP 9189)]
-- FreeFem++ v4.14 (Thu Dec 28 10:23:40 AM CET 2023 - git no git)
   file : /home/sgau/lib/FREEFEM/examples/3dSurf/buildMeshSfromMesh3.edp
 Load: lg_fem lg_mesh lg_mesh3 eigenvalue 
    1 : load "msh3"
    2 : //load "medit"
    3 : 
    4 : //load "gmsh"
    5 : //load "iovtk"
    6 : 
    7 : int n= 10;
    8 : int nvb = (n+1)^3 - (n-1)^3;// Nb boundary vertices
    9 : int ntb = n*n*12; // Nb of Boundary triangle 
   10 : mesh3 Th=cube(n,n,n);
   11 : Th = buildBdMesh(Th); // build the surface mesh
   12 : 
   13 : 
   14 : int[int] ref2=[1,0,2,0];
   15 : mesh3 Thm=change(Th,label=ref2);
   16 : 
   17 : 
   18 : meshS Th1 = Th.Gamma;
   19 : 
   20 : assert(Th1.nv==602); 
   21 : assert(Th1.nt==1200);
   22 : assert(Th1.nbe==120);
   23 : 
   24 : plot(Th1);
   25 : savemesh(Th1, "Th1.mesh");
   26 : 
   27 : meshS Th2 = readmeshS("Th1.mesh");
   28 : 
   29 : assert(Th1.nv==Th2.nv); 
   30 : assert(Th1.nt==Th2.nt);
   31 : assert(Th1.nbe==Th2.nbe);
   32 :  sizestack + 1024 =1896  ( 872 )

  -- Cube  nv=1331 nt=6000 nbe=1200 kind= 6
Build meshS from mesh3.... 
  Plot::  Sorry no ps version for this type of plot 50
read meshS ok 0surface Mesh, num Triangles:= 1200, num Vertice:= 602 num boundary Edges:= 120
  -- MeshS : Th1.mesh, space dimension 3, num Triangle elts 1200, num Vertice 602 num Bordary elts 120
times: compile 0.769465s, execution 0.30594s,  mpirank:0
 CodeAlloc : nb ptr  3945,  size :527640 mpirank: 0
Ok: Normal End
[Thread 0x7fff5a5046c0 (LWP 9189) exited]
[Thread 0x7fff62d056c0 (LWP 9188) exited]
[Thread 0x7fff6b5066c0 (LWP 9187) exited]
[Thread 0x7fff73d076c0 (LWP 9186) exited]
[Thread 0x7fff7c5086c0 (LWP 9185) exited]
[Thread 0x7fff8cd096c0 (LWP 9184) exited]
[Thread 0x7fff8d50a6c0 (LWP 9183) exited]
[Thread 0x7fff9dd0b6c0 (LWP 9182) exited]
[Thread 0x7fffa650c6c0 (LWP 9181) exited]
[Thread 0x7fffaed0d6c0 (LWP 9180) exited]
[Thread 0x7fffaf50e6c0 (LWP 9179) exited]
[Thread 0x7fffbfd0f6c0 (LWP 9178) exited]
[Thread 0x7fffc05106c0 (LWP 9177) exited]
[Thread 0x7fffc8d116c0 (LWP 9176) exited]
[Thread 0x7fffd15126c0 (LWP 9175) exited]
[Thread 0x7fffe1d136c0 (LWP 9174) exited]
[Thread 0x7fffea5146c0 (LWP 9173) exited]
[Thread 0x7ffff2d156c0 (LWP 9172) exited]
[Thread 0x7ffff35166c0 (LWP 9171) exited]
[Inferior 1 (process 9167) exited normally]

It mean that this exemple work under gdb.

Thanks for the test , but I can say nothing, possible a mix with 2 installations.

remark, this 2 or 3 errors are not so important, I think your version works.