elmerfem
elmerfem copied to clipboard
error: call to undeclared function 'umfpack_di_defaults'; ISO C99 and later do not support implicit function declarations
I don't see -Werror in my build recipe anywhere but Clang 19 errors rather than warns on these C99 violations, breaking the build.
Have you tried to build Elmer with recent versions of Clang? Is it expected to work?
[ 60%] Building C object fem/src/CMakeFiles/elmersolver.dir/umf4_f77wrapper.c.o
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:127:5: error: call to undeclared function 'umfpack_di_defaults'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
127 | UMFPACK_defaults (Control) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:101:27: note: expanded from macro 'UMFPACK_defaults'
101 | #define UMFPACK_defaults umfpack_di_defaults
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:143:12: error: call to undeclared function 'umfpack_di_symbolic'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
143 | (void) UMFPACK_symbolic (*m, *n, Ap, Ai, Ax, Symbolic, Control, Info) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:113:27: note: expanded from macro 'UMFPACK_symbolic'
113 | #define UMFPACK_symbolic umfpack_di_symbolic
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:158:12: error: call to undeclared function 'umfpack_di_numeric'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
158 | (void) UMFPACK_numeric (Ap, Ai, Ax, *Symbolic, Numeric, Control, Info);
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:104:27: note: expanded from macro 'UMFPACK_numeric'
104 | #define UMFPACK_numeric umfpack_di_numeric
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:173:12: error: call to undeclared function 'umfpack_di_solve'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
173 | (void) UMFPACK_solve (*sys, Ap, Ai, Ax, x, b, *Numeric, Control, Info) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:112:25: note: expanded from macro 'UMFPACK_solve'
112 | #define UMFPACK_solve umfpack_di_solve
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:188:12: error: call to undeclared function 'umfpack_di_solve'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
188 | (void) UMFPACK_solve (*sys, (Int *) NULL, (Int *) NULL, (double *) NULL,
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:112:25: note: expanded from macro 'UMFPACK_solve'
112 | #define UMFPACK_solve umfpack_di_solve
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:202:5: error: call to undeclared function 'umfpack_di_free_numeric'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
202 | UMFPACK_free_numeric (Numeric) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:102:31: note: expanded from macro 'UMFPACK_free_numeric'
102 | #define UMFPACK_free_numeric umfpack_di_free_numeric
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:215:5: error: call to undeclared function 'umfpack_di_free_symbolic'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
215 | UMFPACK_free_symbolic (Symbolic) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:103:32: note: expanded from macro 'UMFPACK_free_symbolic'
103 | #define UMFPACK_free_symbolic umfpack_di_free_symbolic
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:259:5: error: call to undeclared function 'umfpack_dl_defaults'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
259 | UMFPACK_defaults (Control) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:236:27: note: expanded from macro 'UMFPACK_defaults'
236 | #define UMFPACK_defaults umfpack_dl_defaults
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:274:12: error: call to undeclared function 'umfpack_dl_symbolic'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
274 | (void) UMFPACK_symbolic (*m, *n, Ap, Ai, Ax, Symbolic, Control, Info) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:248:27: note: expanded from macro 'UMFPACK_symbolic'
248 | #define UMFPACK_symbolic umfpack_dl_symbolic
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:289:12: error: call to undeclared function 'umfpack_dl_numeric'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
289 | (void) UMFPACK_numeric (Ap, Ai, Ax, *Symbolic, Numeric, Control, Info);
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:239:27: note: expanded from macro 'UMFPACK_numeric'
239 | #define UMFPACK_numeric umfpack_dl_numeric
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:304:12: error: call to undeclared function 'umfpack_dl_solve'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
304 | (void) UMFPACK_solve (*sys, Ap, Ai, Ax, x, b, *Numeric, Control, Info) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:247:25: note: expanded from macro 'UMFPACK_solve'
247 | #define UMFPACK_solve umfpack_dl_solve
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:318:12: error: call to undeclared function 'umfpack_dl_solve'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
318 | (void) UMFPACK_solve (*sys, (Int *) NULL, (Int *) NULL, (double *) NULL,
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:247:25: note: expanded from macro 'UMFPACK_solve'
247 | #define UMFPACK_solve umfpack_dl_solve
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:332:5: error: call to undeclared function 'umfpack_dl_free_numeric'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
332 | UMFPACK_free_numeric (Numeric) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:237:31: note: expanded from macro 'UMFPACK_free_numeric'
237 | #define UMFPACK_free_numeric umfpack_dl_free_numeric
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:345:5: error: call to undeclared function 'umfpack_dl_free_symbolic'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
345 | UMFPACK_free_symbolic (Symbolic) ;
| ^
/home/jehammond/ELMER/elmerfem/fem/src/umf4_f77wrapper.c:238:32: note: expanded from macro 'UMFPACK_free_symbolic'
238 | #define UMFPACK_free_symbolic umfpack_dl_free_symbolic
| ^
14 errors generated.
This issue can be solved by adding:
#include "../umfpack/src/umfpack/include/umfpack.h"
right below the
#include "../config.h" statement inside umf4_f77wrapper.c inside elmer/fem/src
However beware of spiraling down into deeper compiler rabbitholes!
This issue also breaks build with gcc14:
:info:build [ 61%] Building C object fem/src/CMakeFiles/elmersolver.dir/umf4_f77wrapper.o
:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build/fem/src && /opt/local/bin/gcc-mp-14 -DHAVE_EXECUTECOMMANDLINE -DUSE_ARPACK -DUSE_ISO_C_BINDINGS -Delmersolver_EXPORTS -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build/fem/src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fhutiter/src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build/fem/src/binio -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build/fhutiter/src -pipe -Os -DNDEBUG -isystem/opt/local/include/LegacySupport -I/opt/local/include -fopenmp -arch ppc -mmacosx-version-min=10.6 -fPIC -DCONTIG= -MD -MT fem/src/CMakeFiles/elmersolver.dir/umf4_f77wrapper.o -MF CMakeFiles/elmersolver.dir/umf4_f77wrapper.o.d -o CMakeFiles/elmersolver.dir/umf4_f77wrapper.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4def':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:101:34: error: implicit declaration of function 'umfpack_di_defaults'; did you mean 'UMFPACK_defaults'? [-Wimplicit-function-declaration]
:info:build 101 | #define UMFPACK_defaults umfpack_di_defaults
:info:build | ^~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:127:5: note: in expansion of macro 'UMFPACK_defaults'
:info:build 127 | UMFPACK_defaults (Control) ;
:info:build | ^~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4sym':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:113:34: error: implicit declaration of function 'umfpack_di_symbolic'; did you mean 'UMFPACK_symbolic'? [-Wimplicit-function-declaration]
:info:build 113 | #define UMFPACK_symbolic umfpack_di_symbolic
:info:build | ^~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:143:12: note: in expansion of macro 'UMFPACK_symbolic'
:info:build 143 | (void) UMFPACK_symbolic (*m, *n, Ap, Ai, Ax, Symbolic, Control, Info) ;
:info:build | ^~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4num':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:104:34: error: implicit declaration of function 'umfpack_di_numeric'; did you mean 'UMFPACK_numeric'? [-Wimplicit-function-declaration]
:info:build 104 | #define UMFPACK_numeric umfpack_di_numeric
:info:build | ^~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:158:12: note: in expansion of macro 'UMFPACK_numeric'
:info:build 158 | (void) UMFPACK_numeric (Ap, Ai, Ax, *Symbolic, Numeric, Control, Info);
:info:build | ^~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4solr':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:112:34: error: implicit declaration of function 'umfpack_di_solve' [-Wimplicit-function-declaration]
:info:build 112 | #define UMFPACK_solve umfpack_di_solve
:info:build | ^~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:173:12: note: in expansion of macro 'UMFPACK_solve'
:info:build 173 | (void) UMFPACK_solve (*sys, Ap, Ai, Ax, x, b, *Numeric, Control, Info) ;
:info:build | ^~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4fnum':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:102:34: error: implicit declaration of function 'umfpack_di_free_numeric'; did you mean 'UMFPACK_free_numeric'? [-Wimplicit-function-declaration]
:info:build 102 | #define UMFPACK_free_numeric umfpack_di_free_numeric
:info:build | ^~~~~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:202:5: note: in expansion of macro 'UMFPACK_free_numeric'
:info:build 202 | UMFPACK_free_numeric (Numeric) ;
:info:build | ^~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4fsym':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:103:34: error: implicit declaration of function 'umfpack_di_free_symbolic'; did you mean 'UMFPACK_free_symbolic'? [-Wimplicit-function-declaration]
:info:build 103 | #define UMFPACK_free_symbolic umfpack_di_free_symbolic
:info:build | ^~~~~~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:215:5: note: in expansion of macro 'UMFPACK_free_symbolic'
:info:build 215 | UMFPACK_free_symbolic (Symbolic) ;
:info:build | ^~~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4_l_def':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:236:34: error: implicit declaration of function 'umfpack_dl_defaults'; did you mean 'UMFPACK_defaults'? [-Wimplicit-function-declaration]
:info:build 236 | #define UMFPACK_defaults umfpack_dl_defaults
:info:build | ^~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:259:5: note: in expansion of macro 'UMFPACK_defaults'
:info:build 259 | UMFPACK_defaults (Control) ;
:info:build | ^~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4_l_sym':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:248:34: error: implicit declaration of function 'umfpack_dl_symbolic'; did you mean 'UMFPACK_symbolic'? [-Wimplicit-function-declaration]
:info:build 248 | #define UMFPACK_symbolic umfpack_dl_symbolic
:info:build | ^~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:274:12: note: in expansion of macro 'UMFPACK_symbolic'
:info:build 274 | (void) UMFPACK_symbolic (*m, *n, Ap, Ai, Ax, Symbolic, Control, Info) ;
:info:build | ^~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4_l_num':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:239:34: error: implicit declaration of function 'umfpack_dl_numeric'; did you mean 'UMFPACK_numeric'? [-Wimplicit-function-declaration]
:info:build 239 | #define UMFPACK_numeric umfpack_dl_numeric
:info:build | ^~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:289:12: note: in expansion of macro 'UMFPACK_numeric'
:info:build 289 | (void) UMFPACK_numeric (Ap, Ai, Ax, *Symbolic, Numeric, Control, Info);
:info:build | ^~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4_l_solr':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:247:34: error: implicit declaration of function 'umfpack_dl_solve' [-Wimplicit-function-declaration]
:info:build 247 | #define UMFPACK_solve umfpack_dl_solve
:info:build | ^~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:304:12: note: in expansion of macro 'UMFPACK_solve'
:info:build 304 | (void) UMFPACK_solve (*sys, Ap, Ai, Ax, x, b, *Numeric, Control, Info) ;
:info:build | ^~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4_l_fnum':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:237:34: error: implicit declaration of function 'umfpack_dl_free_numeric'; did you mean 'UMFPACK_free_numeric'? [-Wimplicit-function-declaration]
:info:build 237 | #define UMFPACK_free_numeric umfpack_dl_free_numeric
:info:build | ^~~~~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:332:5: note: in expansion of macro 'UMFPACK_free_numeric'
:info:build 332 | UMFPACK_free_numeric (Numeric) ;
:info:build | ^~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c: In function 'umf4_l_fsym':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:238:34: error: implicit declaration of function 'umfpack_dl_free_symbolic'; did you mean 'UMFPACK_free_symbolic'? [-Wimplicit-function-declaration]
:info:build 238 | #define UMFPACK_free_symbolic umfpack_dl_free_symbolic
:info:build | ^~~~~~~~~~~~~~~~~~~~~~~~
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/umf4_f77wrapper.c:345:5: note: in expansion of macro 'UMFPACK_free_symbolic'
:info:build 345 | UMFPACK_free_symbolic (Symbolic) ;
:info:build | ^~~~~~~~~~~~~~~~~~~~~
:info:build make[2]: *** [fem/src/CMakeFiles/elmersolver.dir/umf4_f77wrapper.o] Error 1
:info:build make[2]: *** Waiting for unfinished jobs....
:info:build [ 61%] Building C object fem/src/CMakeFiles/elmersolver.dir/cholmod.o
:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build/fem/src && /opt/local/bin/gcc-mp-14 -DHAVE_EXECUTECOMMANDLINE -DUSE_ARPACK -DUSE_ISO_C_BINDINGS -Delmersolver_EXPORTS -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build/fem/src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fhutiter/src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build/fem/src/binio -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build/fhutiter/src -pipe -Os -DNDEBUG -isystem/opt/local/include/LegacySupport -I/opt/local/include -fopenmp -arch ppc -mmacosx-version-min=10.6 -fPIC -DCONTIG= -MD -MT fem/src/CMakeFiles/elmersolver.dir/cholmod.o -MF CMakeFiles/elmersolver.dir/cholmod.o.d -o CMakeFiles/elmersolver.dir/cholmod.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/elmerfem-1df67599af4e6389d46fa172e6c53354cd73863a/fem/src/cholmod.c
:info:build [ 61%] Building CXX object ElmerGUI/Application/CMakeFiles/ElmerGUI.dir/src/sifgenerator.cpp.o
:info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_elmerfem/elmerfem/work/build'
:info:build make[1]: *** [fem/src/CMakeFiles/elmersolver.dir/all] Error 2
:info:build make[1]: *** Waiting for unfinished jobs....
Have you tried with "EXTERNAL_UMFPACK=ON". This way you could use umfpack from SuiteSparse. It is a lot faster and more robust. The default version is ages old because at v. 5.1 UMFPACK license was changed from LGPL to GPL.
@raback Thank you, this sounds good. I will try it and change the port to use it then in MacPorts.
@ghostforest Bundled one works, though the path should be ../../umfpack/src/umfpack/include/umfpack.h.
@raback And external seems to work, though gcc14 needs to disable these (trivially):
:info:build [ 23%] Building C object fem/src/CMakeFiles/elmersolver.dir/cholmod.c.o
:info:build cd /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/build/fem/src && /opt/local/bin/gcc-mp-14 -DHAVE_EXECUTECOMMANDLINE -DUSE_ARPACK -DUSE_ISO_C_BINDINGS -Delmersolver_EXPORTS -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/build -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/build/fem/src -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fhutiter/src -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/build/fem/src/binio -I/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/build/fhutiter/src -I/opt/local/include -pipe -Os -DNDEBUG -isystem/opt/local/include/LegacySupport -I/opt/local/include -fopenmp -arch ppc -mmacosx-version-min=10.6 -fPIC -DCONTIG= -MD -MT fem/src/CMakeFiles/elmersolver.dir/cholmod.c.o -MF CMakeFiles/elmersolver.dir/cholmod.c.o.d -o CMakeFiles/elmersolver.dir/cholmod.c.o -c /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/cholmod.c
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c: In function 'umf4_l_sym':
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c:275:38: error: passing argument 3 of 'umfpack_dl_symbolic' from incompatible pointer type [-Wincompatible-pointer-types]
:info:build 275 | (void) UMFPACK_symbolic (*m, *n, Ap, Ai, Ax, Symbolic, Control, Info) ;
:info:build | ^~
:info:build | |
:info:build | long int *
:info:build In file included from /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c:82:
:info:build /opt/local/include/umfpack.h:422:19: note: expected 'const int64_t *' {aka 'const long long int *'} but argument is of type 'long int *'
:info:build 422 | const int64_t Ap [ ],
:info:build | ~~~~~~~~~~~~~~^~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c:275:42: error: passing argument 4 of 'umfpack_dl_symbolic' from incompatible pointer type [-Wincompatible-pointer-types]
:info:build 275 | (void) UMFPACK_symbolic (*m, *n, Ap, Ai, Ax, Symbolic, Control, Info) ;
:info:build | ^~
:info:build | |
:info:build | long int *
:info:build /opt/local/include/umfpack.h:423:19: note: expected 'const int64_t *' {aka 'const long long int *'} but argument is of type 'long int *'
:info:build 423 | const int64_t Ai [ ],
:info:build | ~~~~~~~~~~~~~~^~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c: In function 'umf4_l_num':
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c:290:29: error: passing argument 1 of 'umfpack_dl_numeric' from incompatible pointer type [-Wincompatible-pointer-types]
:info:build 290 | (void) UMFPACK_numeric (Ap, Ai, Ax, *Symbolic, Numeric, Control, Info);
:info:build | ^~
:info:build | |
:info:build | long int *
:info:build /opt/local/include/umfpack.h:960:19: note: expected 'const int64_t *' {aka 'const long long int *'} but argument is of type 'long int *'
:info:build 960 | const int64_t Ap [ ],
:info:build | ~~~~~~~~~~~~~~^~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c:290:33: error: passing argument 2 of 'umfpack_dl_numeric' from incompatible pointer type [-Wincompatible-pointer-types]
:info:build 290 | (void) UMFPACK_numeric (Ap, Ai, Ax, *Symbolic, Numeric, Control, Info);
:info:build | ^~
:info:build | |
:info:build | long int *
:info:build /opt/local/include/umfpack.h:961:19: note: expected 'const int64_t *' {aka 'const long long int *'} but argument is of type 'long int *'
:info:build 961 | const int64_t Ai [ ],
:info:build | ~~~~~~~~~~~~~~^~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c: In function 'umf4_l_solr':
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c:305:33: error: passing argument 2 of 'umfpack_dl_solve' from incompatible pointer type [-Wincompatible-pointer-types]
:info:build 305 | (void) UMFPACK_solve (*sys, Ap, Ai, Ax, x, b, *Numeric, Control, Info) ;
:info:build | ^~
:info:build | |
:info:build | long int *
:info:build /opt/local/include/umfpack.h:1503:19: note: expected 'const int64_t *' {aka 'const long long int *'} but argument is of type 'long int *'
:info:build 1503 | const int64_t Ap [ ],
:info:build | ~~~~~~~~~~~~~~^~~~~~
:info:build /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_science_elmerfem/elmerfem/work/elmerfem-a21b1be9009d210c8839bea8f8724bc5fb529f3b/fem/src/umf4_f77wrapper.c:305:37: error: passing argument 3 of 'umfpack_dl_solve' from incompatible pointer type [-Wincompatible-pointer-types]
:info:build 305 | (void) UMFPACK_solve (*sys, Ap, Ai, Ax, x, b, *Numeric, Control, Info) ;
:info:build | ^~
:info:build | |
:info:build | long int *
:info:build /opt/local/include/umfpack.h:1504:19: note: expected 'const int64_t *' {aka 'const long long int *'} but argument is of type 'long int *'
:info:build 1504 | const int64_t Ai [ ],
:info:build | ~~~~~~~~~~~~~~^~~~~~
Since it is recommended, we will go with external one (that is also a preference of MacPorts generally).
#488 would probably fix that build error.
#488 has been merged to the devel branch.
I guess this issue could be closed.
@mmuetzel Incompatible pointers type error has not been addressed so far?
@barracuda156: Thank you for the feedback.
Could you please show the exact error or warning that you are seeing when building from a current head of the devel branch? (#499 might have addressed that...)
@mmuetzel I will try building the master and let you know.
Yeah, ebd157e6b588a451aff167e3ac2c61fd0334bcef builds fine for me with gcc-14.
I guess this can be closed then?
I guess this can be closed then?
I think so.