# PETSc/MUMPS Compilation fail on arch-linux

**URL:** <https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648>\
**Category:** FreeFEM installation\
**Created:** [April 5, 2022, 6:15pm UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648 "2022-04-05T18:15:44Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![aszaboa](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/aszaboa/32/2918_2.png) [@aszaboa](https://community.freefem.org/u/aszaboa)\
**Post date:** [April 5, 2022, 6:15pm UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/1 "2022-04-05T18:15:44Z")

</div>

Dear All,

I am struggling to compile FreeFem on arch-linux. I have compiled FreeFem on ubuntu 18 multiple times following [this](http://jolivet.perso.enseeiht.fr/FreeFem-tutorial/main.html#%5B197,%22XYZ%22,28.35,272.13,null%5D) tutorial; however, it does not seems to work on arch-linux. Any kind of help is appreciated!  
[configure.log](https://community.freefem.org/uploads/short-url/w3lKiGjqSwM3poskYTVyUMIu1XK.log) (3.0 MB)

---

<div class="post-metadata">

**Author:** ![prj](https://avatars.discourse-cdn.com/v4/letter/p/ecae2f/32.png) [@prj](https://community.freefem.org/u/prj)\
**Post date:** [April 5, 2022, 6:49pm UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/2 "2022-04-05T18:49:16Z")

</div>

In `configure.log`, you can see:

```auto
[...]
internal compiler error: Segmentation fault
0xd5b74e internal_error(char const*, ...)
	???:0
0x11eee95 ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*))
	???:0
0x11eea29 ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*))
	???:0
0x11eea29 ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*))
	???:0
0x121a405 ira_create_allocno_live_ranges()
	???:0
0x11e8f50 ira_build()
	???:0
Please submit a full bug report,
[...]

```

So there is a bug in your compiler. Any chance you could try another one?

---

<div class="post-metadata">

**Author:** ![prj](https://avatars.discourse-cdn.com/v4/letter/p/ecae2f/32.png) [@prj](https://community.freefem.org/u/prj)\
**Post date:** [April 6, 2022, 6:54am UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/3 "2022-04-06T06:54:26Z")

</div>

Also, you could use `--disable-fortran` when configuring FreeFEM, then PETSc will use SuperLU\_DIST as an alternative to MUMPS for parallel direct solver.

---

<div class="post-metadata">

**Author:** ![aszaboa](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/aszaboa/32/2918_2.png) [@aszaboa](https://community.freefem.org/u/aszaboa)\
**Post date:** [April 6, 2022, 8:11pm UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/5 "2022-04-06T20:11:13Z")

</div>

Thanks for the quick reply and the tips.

It turned out that this behavior could be resolved by upgrading/updating gcc and gcc-fortran with pacman. Now I managed to compile PETSc successfully.

However, during the FreeFem compilation, I get the following error:

> g++ -DHAVE\_CONFIG\_H -I. -I…/… -I./…/lglib -I./…/bamglib -I./…/Graphics -I./…/femlib -I/home/aszabo/iff/petsc/arch-FreeFem/include -I./…/Eigen -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -MT …/femlib/BamgFreeFem.o -MD -MP -MF $depbase.Tpo -c -o …/femlib/BamgFreeFem.o …/femlib/BamgFreeFem.cpp &&  
> mv -f $depbase.Tpo $depbase.Po  
> during GIMPLE pass: ccp  
> lgmesh3.cpp: In member function ‘Fem2D::DataFENodeDF Fem2D::GenericMesh\<T, B, V\>::BuildDFNumbering(int\*, int, int\*) const [with T = Fem2D::TriangleS; B = Fem2D::BoundaryEdgeS; V = Fem2D::GenericVertexFem2D::R3]’:  
> lgmesh3.cpp:3274:82: internal compiler error: Segmentation fault  
> 3274 | template E\_set\_fev3\<Complex,v\_fesL\>::E\_set\_fev3(const E\_Array \* a,Expression pp) ;  
> | ^  
> 0xe4c988 internal\_error(char const\*, …)  
> ???:0  
> 0x101e641 gsi\_remove(gimple\_stmt\_iterator\*, bool)  
> ???:0  
> 0x1106f34 substitute\_and\_fold\_engine::substitute\_and\_fold(basic\_block\_def\*)  
> ???:0  
> Please submit a full bug report,  
> with preprocessed source if appropriate.  
> Please include the complete backtrace with any bug report.  
> See [https://bugs.archlinux.org/](https://bugs.archlinux.org/) for instructions.  
> make[4]: \*\*\* [Makefile:918: lgmesh3.o] Error 1  
> make[4]: \*\*\* Waiting for unfinished jobs…  
> make[4]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/src/fflib’  
> make[3]: \*\*\* [Makefile:657: all] Error 2  
> make[3]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/src/fflib’  
> make[2]: \*\*\* [Makefile:548: all-recursive] Error 1  
> make[2]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/src’  
> make[1]: \*\*\* [Makefile:800: all-recursive] Error 1  
> make[1]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources’  
> make: \*\*\* [Makefile:750: all] Error 2

This seems to be a similar type of error; however, now all the compilers are installed with gcc version 11.2.0. Do you have any suggestion how this error could be resolved?

Edit: this try was with running `make -j8`. Trying once again with `make clean` + `make -j4` I am getting a similar error but elsewhere:

> g++ -DHAVE\_CONFIG\_H -I. -I…/… -I./…/lglib -I./…/bamglib -I./…/Graphics -I./…/femlib -I/home/aszabo/iff/petsc/arch-FreeFem/include -I./…/Eigen -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -MT lgfem.o -MD -MP -MF $depbase.Tpo -c -o lgfem.o lgfem.cpp &&  
> mv -f $depbase.Tpo $depbase.Po  
> lgmat.cpp: In member function ‘AnyType removeDOF\_Op::operator()(Stack) const [with T = std::complex]’:  
> lgmat.cpp:3370:9: internal compiler error: Segmentation fault  
> 3370 | AnyType removeDOF\_Op::operator()(Stack stack) const {  
> | ^ ~~~~~~~~~~~~~~  
> 0xe4c988 internal\_error(char const\*, …)  
> ???:0  
> 0x143c84f ggc\_set\_mark(void const\*)  
> ???:0  
> 0xa4e1fa gt\_ggc\_mx\_addr\_table\_entry(void\*)  
> ???:0  
> 0x1440a39 gt\_ggc\_mx\_vec\_dw\_attr\_node\_va\_gc\_(void\*)  
> ???:0  
> 0x1440974 gt\_ggc\_mx\_die\_struct(void\*)  
> ???:0  
> 0x14409b2 gt\_ggc\_mx\_die\_struct(void\*)  
> ???:0  
> 0x14409b2 gt\_ggc\_mx\_die\_struct(void\*)  
> ???:0  
> 0x1440a2a gt\_ggc\_mx\_vec\_dw\_attr\_node\_va\_gc\_(void\*)  
> ???:0  
> 0x1440974 gt\_ggc\_mx\_die\_struct(void\*)  
> ???:0  
> 0x1440a1b gt\_ggc\_mx\_vec\_dw\_attr\_node\_va\_gc\_(void\*)  
> ???:0  
> 0x1440974 gt\_ggc\_mx\_die\_struct(void\*)  
> ???:0  
> 0x90bc7c gt\_ggc\_mx\_hash\_table\_decl\_die\_hasher\_(void\*)  
> ???:0  
> 0x15e4a3c ggc\_mark\_roots()  
> ???:0  
> 0xf9042c ggc\_collect()  
> ???:0  
> Please submit a full bug report,  
> with preprocessed source if appropriate.  
> Please include the complete backtrace with any bug report.  
> See [https://bugs.archlinux.org/](https://bugs.archlinux.org/) for instructions.  
> make[4]: \*\*\* [Makefile:918: lgmat.o] Error 1  
> make[4]: \*\*\* Waiting for unfinished jobs…  
> make[4]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/src/fflib’  
> make[3]: \*\*\* [Makefile:657: all] Error 2  
> make[3]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/src/fflib’  
> make[2]: \*\*\* [Makefile:548: all-recursive] Error 1  
> make[2]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/src’  
> make[1]: \*\*\* [Makefile:800: all-recursive] Error 1  
> make[1]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources’  
> make: \*\*\* [Makefile:750: all] Error 2

[config.log](https://community.freefem.org/uploads/short-url/5pX94Xhw2hEtHSrgPvL9anIsG6y.log) (127.3 KB)

---

<div class="post-metadata">

**Author:** ![prj](https://avatars.discourse-cdn.com/v4/letter/p/ecae2f/32.png) [@prj](https://community.freefem.org/u/prj)\
**Post date:** [April 7, 2022, 6:32am UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/6 "2022-04-07T06:32:35Z")

</div>

That’s weird, I’m using those compilers on both Windows and Linux (Debian) with no error. Could you please simply try with `make -j1` and copy/paste the first error you get?

---

<div class="post-metadata">

**Author:** ![aszaboa](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/aszaboa/32/2918_2.png) [@aszaboa](https://community.freefem.org/u/aszaboa)\
**Post date:** [April 7, 2022, 9:30am UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/7 "2022-04-07T09:30:33Z")

</div>

Thanks for the tip. Compiling with `-j1` gives the following error :

> …/seq/ff-c++ -auto -mpi parmmg.cpp  
> eval …/seq/ff-c++ ‘-mpi’ parmmg.cpp -L/home/aszabo/iff/FreeFem-sources/3rdparty/lib -lparm mg -I/home/aszabo/iff/FreeFem-sources/3rdparty/include/ -L/home/aszabo/iff/FreeFem-sources/ 3rdparty/lib -lmmg -I/home/aszabo/iff/FreeFem-sources/3rdparty/include/ -pthread -L/usr/lib /openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags -lmpi\_cxx -lmpi -Wl,-rpath, /home/aszabo/iff/petsc/arch-FreeFem/lib -L/home/aszabo/iff/petsc/arch-FreeFem/lib -lmetis - I/home/aszabo/iff/petsc/arch-FreeFem/include -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem /lib -L/home/aszabo/iff/petsc/arch-FreeFem/lib -lesmumps -lscotch -lscotcherr -I/home/aszab o/iff/petsc/arch-FreeFem/include  
> mpicxx -c -fPIC ‘-I…/seq/include’ ‘-I/home/aszabo/iff/FreeFem-sources/3rdparty/include/’ ’ -I/home/aszabo/iff/FreeFem-sources/3rdparty/include/’ ‘-I/home/aszabo/iff/petsc/arch-FreeFe m/include’ ‘-I/home/aszabo/iff/petsc/arch-FreeFem/include’ -g -DNDEBUG -O3 -mmmx -mavx -std =c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘pa rmmg.cpp’

mpicxx -shared -fPIC -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -f PIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘parmmg.o’ -o parmmg.so ‘-L/home/aszabo/i ff/FreeFem-sources/3rdparty/lib’ ‘-lparmmg’ ‘-L/home/aszabo/iff/FreeFem-sources/3rdparty/li b’ ‘-lmmg’ ‘-L/usr/lib/openmpi’ -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags ‘-lm pi\_cxx’ ‘-lmpi’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/pets c/arch-FreeFem/lib’ ‘-lmetis’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/a szabo/iff/petsc/arch-FreeFem/lib’ ‘-lesmumps’ ‘-lscotch’ ‘-lscotcherr’ -pthread -pthread -L /usr/lib/openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags -lmpi\_cxx -lmpi

…/seq/ff-c++ -auto -mpi hpddm.cpp  
eval …/seq/ff-c++ ‘-mpi’ hpddm.cpp -std=c++14 -std=c++14 -I/home/aszabo/iff/petsc/arch-Fre eFem/include -DWITH\_mumps -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib -L/home/aszabo /iff/petsc/arch-FreeFem/lib -lcmumps -ldmumps -lsmumps -lzmumps -lmumps\_common -lpord -I/ho me/aszabo/iff/petsc/arch-FreeFem/include -DWITH\_parmetis -Wl,-rpath,/home/aszabo/iff/petsc/ arch-FreeFem/lib -L/home/aszabo/iff/petsc/arch-FreeFem/lib -lparmetis -I/home/aszabo/iff/pe tsc/arch-FreeFem/include -DWITH\_metis -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib -L /home/aszabo/iff/petsc/arch-FreeFem/lib -lmetis -I/home/aszabo/iff/petsc/arch-FreeFem/inclu de -DWITH\_ptscotch -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib -L/home/aszabo/iff/pe tsc/arch-FreeFem/lib -lptesmumps -lptscotchparmetis -lptscotch -lptscotcherr -lesmumps -lsc otch -lscotcherr -I/home/aszabo/iff/petsc/arch-FreeFem/include -DWITH\_scotch -Wl,-rpath,/ho me/aszabo/iff/petsc/arch-FreeFem/lib -L/home/aszabo/iff/petsc/arch-FreeFem/lib -lesmumps -l scotch -lscotcherr -I/home/aszabo/iff/petsc/arch-FreeFem/include -DWITH\_scalapack -Wl,-rpat h,/home/aszabo/iff/petsc/arch-FreeFem/lib -L/home/aszabo/iff/petsc/arch-FreeFem/lib -lscala pack -DWITH\_mpifc -pthread -L/usr/lib/openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable- new-dtags -lmpi\_usempif08 -lmpi\_usempi\_ignore\_tkr -lmpi\_mpifh -lmpi -DWITH\_fc -L/usr/lib/gc c/x86\_64-pc-linux-gnu/11.2.0 -L/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0/…/…/…/…/lib -L/l ib/…/lib -L/usr/lib/…/lib -L/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0/…/…/… -lgfortran - lm -lquadmath -DAdd\_ -DWITH\_blas -llapack -lblas -pthread -L/usr/lib/openmpi -Wl,-rpath -Wl ,/usr/lib/openmpi -Wl,–enable-new-dtags -lmpi\_cxx -lmpi  
mpicxx -c -fPIC -std=c++14 -std=c++14 ‘-I…/seq/include’ ‘-I/home/aszabo/iff/petsc/arch-Fre eFem/include’ ‘-DWITH\_mumps’ ‘-I/home/aszabo/iff/petsc/arch-FreeFem/include’ ‘-DWITH\_parmet is’ ‘-I/home/aszabo/iff/petsc/arch-FreeFem/include’ ‘-DWITH\_metis’ ‘-I/home/aszabo/iff/pets c/arch-FreeFem/include’ ‘-DWITH\_ptscotch’ ‘-I/home/aszabo/iff/petsc/arch-FreeFem/include’ ’ -DWITH\_scotch’ ‘-I/home/aszabo/iff/petsc/arch-FreeFem/include’ ‘-DWITH\_scalapack’ ‘-DWITH\_m pifc’ ‘-DWITH\_fc’ ‘-DAdd\_’ ‘-DWITH\_blas’ -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG \_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘hpddm.cpp’  
In file included from /home/aszabo/iff/petsc/arch-FreeFem/include/HPDDM\_preconditioner.hpp: 48,  
from /home/aszabo/iff/petsc/arch-FreeFem/include/HPDDM\_schwarz.hpp:51,  
from /home/aszabo/iff/petsc/arch-FreeFem/include/HPDDM.hpp:356,  
from common\_hpddm.hpp:55,  
from hpddm.cpp:15:  
/home/aszabo/iff/petsc/arch-FreeFem/include/HPDDM\_coarse\_operator\_impl.hpp: In instantiatio n of ‘std::pair\<ompi\_request\_t\*, const K\*\>\* HPDDM::CoarseOperator\<Solver, S, K\>::constructi onMatrix(typename std::enable\_if\<(Operator::\_pattern != ‘u’), Operator\>::type&) [with char T = ‘\000’; short unsigned int U = 2; short unsigned int excluded = 1; Operator = HPDDM::Ma trixMultiplication\<HPDDM::Schwarz\<HPDDM::MumpsSub, HPDDM::Mumps, ‘G’, std::complex \>, std::complex \>; Solver = HPDDM::Mumps; char S = ‘G’; K = std::complex; H PDDM::CoarseOperator\<Solver, S, K\>::return\_type = std::pair\<ompi\_request\_t\*, const std::com plex_\>_; typename std::enable\_if\<(Operator::\_pattern != ‘u’), Operator\>::type = HPD DM::MatrixMultiplication\<HPDDM::Schwarz\<HPDDM::MumpsSub, HPDDM::Mumps, ‘G’, std::complex \>, std::complex \>]’:  
/home/aszabo/iff/petsc/arch-FreeFem/include/HPDDM\_coarse\_operator\_impl.hpp:278:69: requir ed from ‘std::pair\<ompi\_request\_t\*, const K\*\>\* HPDDM::CoarseOperator\<Solver, S, K\>::constru ction(Operator&&, ompi\_communicator\_t\* const&) [with short unsigned int = 2; sh ort unsigned int = 1; Operator = HPDDM::MatrixMultiplication\<HPDDM::Schwarz\<HPD DM::MumpsSub, HPDDM::Mumps, ‘G’, std::complex \>, std::complex \>; Solver = H PDDM::Mumps; char S = ‘G’; K = std::complex; HPDDM::CoarseOperator\<Solver, S, K\>::r eturn\_type = std::pair\<ompi\_request\_t\*, const std::complex_\>_; MPI\_Comm = ompi\_comm unicator\_t\*]’  
/home/aszabo/iff/petsc/arch-FreeFem/include/HPDDM\_preconditioner.hpp:226:65: required fro m ‘typename CoarseOperator::return\_type HPDDM::Preconditioner\<Solver, CoarseOperator, K\>::b uildTwo(Prcndtnr\*, ompi\_communicator\_t\* const&, Types& …) [with short unsigned int exclud ed = 1; Operator = HPDDM::MatrixMultiplication\<HPDDM::Schwarz\<HPDDM::MumpsSub, HPDDM::Mumps , ‘G’, std::complex \>, std::complex \>; Prcndtnr = HPDDM::Schwarz\<HPDDM::Mum psSub, HPDDM::Mumps, ‘G’, std::complex \>; Types = {}; Solver = HPDDM::MumpsSub; Coa rseOperator = HPDDM::CoarseOperator\<HPDDM::Mumps, ‘G’, std::complex \>; K = std::com plex; typename CoarseOperator::return\_type = std::pair\<ompi\_request\_t\*, const std:: complex_\>_; MPI\_Comm = ompi\_communicator\_t\*]’  
/home/aszabo/iff/petsc/arch-FreeFem/include/HPDDM\_schwarz.hpp:412:120: required from ‘typ ename HPDDM::Schwarz\<Solver, CoarseSolver, S, K\>::super::co\_type::return\_type HPDDM::Schwar z\<Solver, CoarseSolver, S, K\>::buildTwo(ompi\_communicator\_t\* const&, HPDDM::MatrixCSR\* c onst&) [with short unsigned int excluded = 1; Solver = HPDDM::MumpsSub; CoarseSolver = HPDD M::Mumps; char S = ‘G’; K = std::complex; typename HPDDM::Schwarz\<Solver, CoarseSol ver, S, K\>::super::co\_type::return\_type = std::pair\<ompi\_request\_t\*, const std::complex_\>_; typename HPDDM::Schwarz\<Solver, CoarseSolver, S, K\>::super::co\_type = HPDDM::Coars eOperator\<HPDDM::Mumps, ‘G’, std::complex \>; HPDDM::Schwarz\<Solver, CoarseSolver, S , K\>::super = HPDDM::Preconditioner\<HPDDM::MumpsSub, HPDDM::CoarseOperator\<HPDDM::Mumps, 'G ', std::complex \>, std::complex \>; MPI\_Comm = ompi\_communicator\_t\*]’  
hpddm.cpp:308:56: required from ‘AnyType Schwarz::attachCoarseOperator\<Type, K\>::E\_attach CoarseOperator::operator()(Stack) const [with Type = HPDDM::Schwarz\<HPDDM::MumpsSub, HPDDM: :Mumps, ‘G’, std::complex \>; K = std::complex; AnyType = AnyTypeWithOutChec k; Stack = void\*]’  
hpddm.cpp:251:9: required from here  
/home/aszabo/iff/petsc/arch-FreeFem/include/HPDDM\_coarse\_operator\_impl.hpp:1376:1: internal compiler error: Segmentation fault  
1376 | }  
| ^  
0xe4c988 internal\_error(char const\*, …)  
???:0  
0x1067961 cp\_fold\_maybe\_rvalue(tree\_node\*, bool)  
???:0  
0x1067961 cp\_fold\_maybe\_rvalue(tree\_node\*, bool)  
???:0  
0x1067961 cp\_fold\_maybe\_rvalue(tree\_node\*, bool)  
???:0  
0xf683cb walk\_tree\_1(tree\_node\*\*, tree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf68475 walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf6892e walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf684f4 walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf6892e walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf6892e walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf684a1 walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf6892e walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf684a1 walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf6892e walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf684a1 walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0xf6892e walk\_tree\_1(tree\_node\*\*, tree\_node_ (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set \<tree\_node\*, false, default\_hash\_traits\<tree\_node\*\> \>_, tree\_node_ (_)(tree\_node\*\*, int_, t ree\_node\* (_)(tree\_node\*\*, int_, void\*), void\*, hash\_set\<tree\_node\*, false, default\_hash\_tr aits\<tree\_node\*\> \>_))  
???:0  
0x1078beb finish\_function(bool)  
???:0  
0x1294a36 instantiate\_decl(tree\_node_, bool, bool)  
???:0  
0xfe2243 instantiate\_pending\_templates(int)  
???:0  
0xfddab7 c\_parse\_final\_cleanups()  
???:0  
Please submit a full bug report,  
with preprocessed source if appropriate.  
Please include the complete backtrace with any bug report.  
See [https://bugs.archlinux.org/](https://bugs.archlinux.org/) for instructions.  
make[3]: \*\*\* [Makefile:660: hpddm.so] Error 1  
make[3]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/plugin/mpi’  
make[2]: \*\*\* [Makefile:663: all-recursive] Error 1  
make[2]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/plugin’  
make[1]: \*\*\* [Makefile:800: all-recursive] Error 1  
make[1]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources’  
make: \*\*\* [Makefile:750: all] Error 2

I checked and `mpicxx` also seems to be up-to-date.

---

<div class="post-metadata">

**Author:** ![prj](https://avatars.discourse-cdn.com/v4/letter/p/ecae2f/32.png) [@prj](https://community.freefem.org/u/prj)\
**Post date:** [April 7, 2022, 11:32am UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/8 "2022-04-07T11:32:13Z")

</div>

Well… maybe it’s up to date, but it’s bugged. Does `plugin/mpi/PETSc.cpp` compile?

---

<div class="post-metadata">

**Author:** ![aszaboa](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/aszaboa/32/2918_2.png) [@aszaboa](https://community.freefem.org/u/aszaboa)\
**Post date:** [April 7, 2022, 12:14pm UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/9 "2022-04-07T12:14:08Z")

</div>

Yes, I suppose it does:

> mpicxx -shared -fPIC -std=c++14 -std=c++14 -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘hpddm\_substructuring.o’ -o hpddm\_substructuring.so -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ ‘-lcmumps’ ‘-ldmumps’ ‘-lsmumps’ ‘-lzmumps’ ‘-lmumps\_common’ ‘-lpord’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ ‘-lparmetis’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ ‘-lmetis’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ ‘-lptesmumps’ ‘-lptscotchparmetis’ ‘-lptscotch’ ‘-lptscotcherr’ ‘-lesmumps’ ‘-lscotch’ ‘-lscotcherr’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ ‘-lesmumps’ ‘-lscotch’ ‘-lscotcherr’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ ‘-lscalapack’ ‘-L/usr/lib/openmpi’ -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags ‘-lmpi\_usempif08’ ‘-lmpi\_usempi\_ignore\_tkr’ ‘-lmpi\_mpifh’ ‘-lmpi’ ‘-L/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0’ ‘-L/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0/…/…/…/…/lib’ ‘-L/lib/…/lib’ ‘-L/usr/lib/…/lib’ ‘-L/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0/…/…/…’ ‘-lgfortran’ ‘-lm’ ‘-lquadmath’ ‘-llapack’ ‘-lblas’ ‘-L/usr/lib/openmpi’ -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags ‘-lmpi\_cxx’ ‘-lmpi’ -pthread -pthread -pthread -L/usr/lib/openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags -lmpi\_cxx -lmpi  
> …/seq/ff-c++ -auto -mpi PETSc.cpp  
> eval …/seq/ff-c++ ‘-mpi’ PETSc.cpp -std=c++14 -std=c++14 -DWITH\_slepc -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib -L/home/aszabo/iff/petsc/arch-FreeFem/lib -lslepc -I/home/aszabo/iff/petsc/include -I/home/aszabo/iff/petsc/arch-FreeFem/include -DWITH\_petsc -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib -L/home/aszabo/iff/petsc/arch-FreeFem/lib -lpetsc -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib -L/home/aszabo/iff/petsc/arch-FreeFem/lib -Wl,-rpath,/usr/lib/openmpi -L/usr/lib/openmpi -Wl,-rpath,/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0 -L/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0 -lHYPRE -lspqr -lumfpack -lklu -lcholmod -lbtf -lccolamd -lcolamd -lcamd -lamd -lsuitesparseconfig -lcmumps -ldmumps -lsmumps -lzmumps -lmumps\_common -lpord -lscalapack -lsuperlu -llapack -lblas -lptesmumps -lptscotchparmetis -lptscotch -lptscotcherr -lesmumps -lscotch -lscotcherr -lparmetis -lmetis -ltet -lm -lX11 -lstdc++ -ldl -lmpi\_usempif08 -lmpi\_usempi\_ignore\_tkr -lmpi\_mpifh -lmpi -lgfortran -lm -lgfortran -lm -lgcc\_s -lquadmath -lpthread -lrt -lquadmath -lstdc++ -ldl -I/home/aszabo/iff/petsc/include -I/home/aszabo/iff/petsc/arch-FreeFem/include -DWITH\_blas -llapack -lblas -I/home/aszabo/iff/petsc/arch-FreeFem/include -pthread -L/usr/lib/openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags -lmpi\_cxx -lmpi  
> mpicxx -c -fPIC -std=c++14 -std=c++14 ‘-I…/seq/include’ ‘-DWITH\_slepc’ ‘-I/home/aszabo/iff/petsc/include’ ‘-I/home/aszabo/iff/petsc/arch-FreeFem/include’ ‘-DWITH\_petsc’ ‘-I/home/aszabo/iff/petsc/include’ ‘-I/home/aszabo/iff/petsc/arch-FreeFem/include’ ‘-DWITH\_blas’ ‘-I/home/aszabo/iff/petsc/arch-FreeFem/include’ -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘PETSc.cpp’  
> mpicxx -shared -fPIC -std=c++14 -std=c++14 -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘PETSc.o’ -o PETSc.so -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ ‘-lslepc’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ ‘-lpetsc’ -Wl,-rpath,/home/aszabo/iff/petsc/arch-FreeFem/lib ‘-L/home/aszabo/iff/petsc/arch-FreeFem/lib’ -Wl,-rpath,/usr/lib/openmpi ‘-L/usr/lib/openmpi’ -Wl,-rpath,/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0 ‘-L/usr/lib/gcc/x86\_64-pc-linux-gnu/11.2.0’ ‘-lHYPRE’ ‘-lspqr’ ‘-lumfpack’ ‘-lklu’ ‘-lcholmod’ ‘-lbtf’ ‘-lccolamd’ ‘-lcolamd’ ‘-lcamd’ ‘-lamd’ ‘-lsuitesparseconfig’ ‘-lcmumps’ ‘-ldmumps’ ‘-lsmumps’ ‘-lzmumps’ ‘-lmumps\_common’ ‘-lpord’ ‘-lscalapack’ ‘-lsuperlu’ ‘-llapack’ ‘-lblas’ ‘-lptesmumps’ ‘-lptscotchparmetis’ ‘-lptscotch’ ‘-lptscotcherr’ ‘-lesmumps’ ‘-lscotch’ ‘-lscotcherr’ ‘-lparmetis’ ‘-lmetis’ ‘-ltet’ ‘-lm’ ‘-lX11’ ‘-lstdc++’ ‘-ldl’ ‘-lmpi\_usempif08’ ‘-lmpi\_usempi\_ignore\_tkr’ ‘-lmpi\_mpifh’ ‘-lmpi’ ‘-lgfortran’ ‘-lm’ ‘-lgfortran’ ‘-lm’ ‘-lgcc\_s’ ‘-lquadmath’ ‘-lpthread’ ‘-lrt’ ‘-lquadmath’ ‘-lstdc++’ ‘-ldl’ ‘-llapack’ ‘-lblas’ ‘-L/usr/lib/openmpi’ -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags ‘-lmpi\_cxx’ ‘-lmpi’ -pthread -pthread -L/usr/lib/openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags -lmpi\_cxx -lmpi

I completely erased and downloaded FreeFem from github. The compilation (with `-j1` now finishes with the following:

> …/seq/ff-c++ -auto -mpi SLEPc-complex.cpp  
> eval …/seq/ff-c++ ‘-mpi’ SLEPc-complex.cpp -std=c++14 -std=c++14  
> mpicxx -c -fPIC -std=c++14 -std=c++14 ‘-I…/seq/include’ -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘SLEPc-complex.cpp’  
> mpicxx -shared -fPIC -std=c++14 -std=c++14 -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘SLEPc-complex.o’ -o SLEPc-complex.so -pthread -L/usr/lib/openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags -lmpi\_cxx -lmpi  
> …/seq/ff-c++ -auto -mpi SLEPc.cpp  
> eval …/seq/ff-c++ ‘-mpi’ SLEPc.cpp -std=c++14 -std=c++14  
> mpicxx -c -fPIC -std=c++14 -std=c++14 ‘-I…/seq/include’ -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘SLEPc.cpp’  
> mpicxx -shared -fPIC -std=c++14 -std=c++14 -g -DNDEBUG -O3 -mmmx -mavx -std=c++14 -DBAMG\_LONG\_LONG -DNCHECKPTR -fPIC -I/home/aszabo/iff/petsc/arch-FreeFem/include ‘SLEPc.o’ -o SLEPc.so -pthread -L/usr/lib/openmpi -Wl,-rpath -Wl,/usr/lib/openmpi -Wl,–enable-new-dtags -lmpi\_cxx -lmpi  
> Warning missing mpi plugin:  
> finish compile load mpi solver !  
> make[3]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/plugin/mpi’  
> make[3]: Entering directory ‘/home/aszabo/iff/FreeFem-sources/plugin’  
> make[3]: Nothing to be done for ‘all-am’.  
> make[3]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/plugin’  
> make[2]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/plugin’  
> Making all in examples  
> make[2]: Entering directory ‘/home/aszabo/iff/FreeFem-sources/examples’  
> Making all in 3d  
> make[3]: Entering directory ‘/home/aszabo/iff/FreeFem-sources/examples/3d’  
> (echo “NoGraphicWindow=true;NoUseOfWait=true;int verbosityy=verbosity;int MEM1234=storageused();”;   
> for i in \*`ls *.edp|grep -v -E '^(all|regtests|makeref|ref)\.edp$'` ; do   
> echo ’ cout \<\< “--------- file : ‘$i’ --------------------------------------------------------” \<\< endl;’ ;  
> echo “verbosity=verbosityy;searchMethod=0;” ;   
> echo { include "i\"\;\}\; ;\ echo ' cout \<\< " mem leak = " \<\<storageused() - MEM1234 \<\< endl \<\< "------------------------------------------------------------------------------ " \<\< endl;' ;\ done) \> all.edp echo includepath = \"../../idp/\" \> freefem++.pref echo loadpath = \"../../plugin/seq/\" \>\> freefem++.pref make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/3d' Making all in 3dSurf make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/3dSurf' (echo "NoGraphicWindow=true;NoUseOfWait=true;int verbosityy=verbosity;int MEM1234=storageused();"; \ for i in \*`ls \*.edp|grep -v -E '^(all|regtests|makeref|ref)\.edp’` ; do \ echo ' cout << "--------- file : '$i' --------------------------------------------------------" << endl;' ;\ echo "verbosity=verbosityy;searchMethod=0;" ; \ echo \{ include \" $i\" \;\}\; ;\ echo ' cout << " mem leak = " <<storageused() - MEM1234 << endl << "------------------------------------------------------------------------------ " << endl;' ;\ done) > all.edp echo includepath = \"../../idp/\" > freefem++.pref echo loadpath = \"../../plugin/seq/\" >> freefem++.pref make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/3dSurf' Making all in 3dCurve make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/3dCurve' (echo "NoGraphicWindow=true;NoUseOfWait=true;int verbosityy=verbosity;int MEM1234=storageused();"; \ for i in *`ls \*.edp|grep -v -E ‘^(all|regtests|makeref|ref).edp$’` ; do \ echo ' cout << "--------- file : '$i' --------------------------------------------------------" << endl;' ;\ echo "verbosity=verbosityy;searchMethod=0;" ; \ echo \{ include \"$i\"\;\}\; ;\ echo ' cout << " mem leak = " <<storageused() - MEM1234 << endl << "------------------------------------------------------------------------------ " << endl;' ;\ done) > all.edp echo includepath = \"../../idp/\" > freefem++.pref echo loadpath = \"../../plugin/seq/\" >> freefem++.pref make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/3dCurve' Making all in examples make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/examples' (echo "NoUseOfWait=true;int verbosityy=verbosity;"; \ for i in *`ls \*.edp|grep -v -E ‘^(all|regtests|makeref|ref).edp$’` ; do \ echo ' cout << "--------- file : '$i' --------------------------------------------------------" << endl;' ;\ echo "verbosity=verbosityy;" ; \ echo \{ include \"$i\"\;\}\; ;\ echo ' cout << "------------------------------------------------------------------------------ " << endl;' ;\ done) > all.edp echo includepath = \"../../idp/\" > freefem++.pref echo loadpath = \"../../plugin/seq/\" >> freefem++.pref make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/examples' Making all in misc make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/misc' (echo "NoUseOfWait=true;int verbosityy=verbosity;"; \ for i in *`ls \*.edp|grep -v -E ‘^(all|regtests|makeref|ref).edp$’` ; do \ echo ' cout << "--------- file : '$i' --------------------------------------------------------" << endl;' ;\ echo "verbosity=verbosityy;" ; \ echo \{ include \"$i\"\;\}\; ;\ echo ' cout << "------------------------------------------------------------------------------ " << endl;' ;\ done) > all.edp echo includepath = \"../../idp/\" > freefem++.pref echo loadpath = \"../../plugin/seq/\" >> freefem++.pref make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/misc' Making all in plugin make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/plugin' echo loadpath = "../../plugin/seq/" > freefem++.pref echo includepath = "../../idp/" >> freefem++.pref mkdir o Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file Error freefem++ file ,file make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/plugin' Making all in bug make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/bug' make[3]: Nothing to be done for 'all'. make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/bug' Making all in ffddm make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/ffddm' echo loadpath = \"../../plugin/mpi/\" > freefem++.pref echo loadpath += \"../../plugin/seq/\" >> freefem++.pref echo includepath = \"../../idp/\" >> freefem++.pref make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/ffddm' Making all in mpi make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/mpi' echo "loadpath = ../../plugin/mpi/" > freefem++.pref echo "loadpath += ../../plugin/seq/" >>freefem++.pref echo "includepath = ../../idp/" >> freefem++.pref make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/mpi' Making all in tutorial make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/tutorial' (echo "NoUseOfWait=true;int verbosityy=verbosity;"; \ for i in *`ls \*.edp|grep -v -E ‘^(all|regtests|makeref|ref).edp$’` ; do \ echo ' cout << "--------- file : '$i' --------------------------------------------------------" << endl;' ;\ echo "verbosity=verbosityy;" ; \ echo \{ include \"$i\"\;\}\; ;\ echo ' cout << "------------------------------------------------------------------------------ " << endl;' ;\ done) > all.edp echo includepath = \"../../idp/\" > freefem++.pref echo loadpath = \"../../plugin/seq/\" >> freefem++.pref make[3]: Leaving directory '/home/aszabo/iff/FreeFem-sources/examples/tutorial' Making all in eigen make[3]: Entering directory '/home/aszabo/iff/FreeFem-sources/examples/eigen' (echo "NoUseOfWait=true;int verbosityy=verbosity;"; \ for i in *`ls \*.edp|grep -v -E ‘^(all|regtests|makeref|ref).edp$’` ; do   
> echo ’ cout \<\< “--------- file : ‘$i’ --------------------------------------------------------” \<\< endl;’ ;  
> echo “verbosity=verbosityy;” ;   
> echo { include "$i";}; ;  
> echo ’ cout \<\< "------------------------------------------------------------------------------ " \<\< endl;’ ;  
> done) \> all.edp  
> echo includepath = "…/…/idp/" \> freefem++.pref  
> echo loadpath = "…/…/plugin/seq/" \>\> freefem++.pref  
> make[3]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/examples/eigen’  
> Making all in hpddm  
> make[3]: Entering directory ‘/home/aszabo/iff/FreeFem-sources/examples/hpddm’  
> echo loadpath = "…/…/plugin/mpi/" \> freefem++.pref  
> echo loadpath += "…/…/plugin/seq/" \>\> freefem++.pref  
> echo includepath = "…/…/idp/" \>\> freefem++.pref  
> make[3]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/examples/hpddm’  
> make[3]: Entering directory ‘/home/aszabo/iff/FreeFem-sources/examples’  
> make[3]: Nothing to be done for ‘all-am’.  
> make[3]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/examples’  
> make[2]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources/examples’  
> make[2]: Entering directory ‘/home/aszabo/iff/FreeFem-sources’  
> make[2]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources’  
> make[1]: Leaving directory ‘/home/aszabo/iff/FreeFem-sources’

Does this contain anything meaningful? The undefined control sequence is `echo \{ include \"$i\"\;\}\; ;\`

---

<div class="post-metadata">

**Author:** ![prj](https://avatars.discourse-cdn.com/v4/letter/p/ecae2f/32.png) [@prj](https://community.freefem.org/u/prj)\
**Post date:** [April 7, 2022, 12:25pm UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/10 "2022-04-07T12:25:56Z")

</div>

Ah, OK! Then everything is alright. Everything after `finish compile load mpi solver!` is just gibberish.

---

<div class="post-metadata">

**Author:** ![aszaboa](https://yyz2.discourse-cdn.com/flex030/user_avatar/community.freefem.org/aszaboa/32/2918_2.png) [@aszaboa](https://community.freefem.org/u/aszaboa)\
**Post date:** [April 7, 2022, 12:32pm UTC](https://community.freefem.org/t/petsc-mumps-compilation-fail-on-arch-linux/1648/11 "2022-04-07T12:32:43Z")

</div>

Wow, I have received to many errors in the past few days, I did not realized that the compilation was successful. I guess the conclusion is that changing version for only one compiler is dangerous, and everything needs to be clean (there were also other issues, e.g., not properly uninstalled automake, etc.). I will stick to compilation with `make -j1` on this machine.

Thank you really much for the help!
