Hi Alberto,
Such issues should ideally be reported to Perl, because that's the issue
with their package. Or at least to Spack in a hope that the community can
come up with some patch to workaround the build issue in Perl.
For you to go on simply tell Spack to use Perl from system:
perl:
paths:
[email protected]%[email protected]: /usr
As for the Blas/Lapack, IMO there is no reason to use system provided one
in your case.
You get more control of threading, compiler flags, etc through Spack and it
does not take ages to build either.
p.s. there are some examples of config files for Spack on various HPC
systems, if that helps:
https://github.com/spack/spack-configs
https://github.com/eth-cscs/production/tree/master/spack/daint
https://ceed.exascaleproject.org/ceed-1.0/
https://gitlab.dkrz.de/m300488/icon-bootstrap/tree/master/config/sites
Denis.
On Tuesday, October 1, 2019 at 7:02:43 PM UTC+2, Alberto Salvadori wrote:
>
> Dear community
>
> I have been trying to install deal.ii on a linux machine equipped with
> CentOS7. As very clearly explained in "
> https://github.com/dealii/dealii/wiki/deal.II-in-Spack#check-before-build
> "
> I have installed the latest version of gcc, openmpi, cmake.
>
> [deal.ii@localhost spack]$ gcc --version
>
> gcc (GCC) 9.2.0
>
> Copyright (C) 2019 Free Software Foundation, Inc.
>
> This is free software; see the source for copying conditions. There is NO
>
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
>
> [deal.ii@localhost spack]$ mpirun --version
>
> mpirun (Open MPI) 3.1.4
>
> [deal.ii@localhost spack]$ cmake --version
>
> cmake version 3.15.3
>
> Noticing the incompatibility with cmake, I run
>
> [deal.ii@localhost spack]$ spack install dealii^[email protected]
>
>
>
>
> but I got this error:
>
>
>
> *==>* libsigsegv is already installed in
> /home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/libsigsegv-2.11-brkulrpubdu66nzym2zt2j6c3h6nw463
>
> *==>* m4 is already installed in
> /home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/m4-1.4.18-23npyrcdfzqehgp4s2mhka4nknjjkbzt
>
> *==>* pkgconf is already installed in
> /home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/pkgconf-1.6.1-qtpkfoaa5ae54s4icmqie5hbtz6murqx
>
> *==>* ncurses is already installed in
> /home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/ncurses-6.1-awd5putjsuzsddipc35vxiupdjicseao
>
> *==>* readline is already installed in
> /home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/readline-7.0-tftx53fdsvjjtfzsfadhzrplo7w2yf46
>
> *==>* gdbm is already installed in
> /home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/gdbm-1.18.1-chqdjuttuqyeyrmsnm6yistdpigsguwq
>
> *==>* *Installing* *perl*
>
> *==>* Searching for binary cache of perl
>
> *==>* Warning: No Spack mirrors are currently configured
>
> *==>* No binary for perl found: installing from source
>
> *==>* Using cached archive:
> /home/deal.ii/spack/var/spack/cache/perl/perl-5.26.2.tar.gz
>
> *==>* Using cached archive:
> /home/deal.ii/spack/var/spack/cache/perl/cpanm-5.26.2.tar.gz
>
> *==>* Using cached archive:
> /home/deal.ii/spack/var/spack/cache/perl/perl-5.26.1-guard_old_libcrypt_fix.patch
>
> *==>* Staging archive:
> /tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/perl-5.26.2.tar.gz
>
> *==>* Created stage in
> /tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3
>
> *==>* Staging archive:
> /tmp/deal.ii/spack-stage/resource-cpanm-zoihbi4ixpd7iyaf5qrbvld62itpgde3/App-cpanminus-1.7042.tar.gz
>
> *==>* Created stage in
> /tmp/deal.ii/spack-stage/resource-cpanm-zoihbi4ixpd7iyaf5qrbvld62itpgde3
>
> *==>* Moving resource stage
>
> source :
> /tmp/deal.ii/spack-stage/resource-cpanm-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/
>
> destination :
> /tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/cpanm/cpanm
>
> *==>* Applied patch
> https://src.fedoraproject.org/rpms/perl/raw/004cea3a67df42e92ffdf4e9ac36d47a3c6a05a4/f/perl-5.26.1-guard_old_libcrypt_fix.patch
>
> *==>* Building perl [Package]
>
> *==>* Executing phase: 'configure'
>
> *==>* Executing phase: 'build'
>
> *==>* Error: ProcessError: Command exited with status 2:
>
> 'make' '-j12'
>
>
> 17 errors found in build log:
>
> 5085
> LD_LIBRARY_PATH=/tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src
>
> ./miniperl -Ilib make_ext.pl lib/auto/PerlIO/encoding/encoding.so
> MAKE="make" LIBPERL_A=libperl.so LINKTYPE=dynamic
>
> 5086 mv Base64.xsc Base64.c
>
> 5087 cc -c -D_REENTRANT -D_GNU_SOURCE
> -DAPPLLIB_EXP="/home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/lib/perl5"
>
> -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/home/
>
>
> deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/gdbm-1.18.1-chqdjuttuqyeyrmsnm6yistdpigsguwq/include
>
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wall
> -Werror=declaration-after-statement -Wextra -Wc++-compat -Wwrite-strings
> -O2
>
> -DVERSION=\"3.15\" -DXS_VERSION=\"3.15\" -fPIC "-I../.."
> Base64.c
>
> 5088 In file included from ../../perl.h:5644,
>
> 5089 from IO.xs:12:
>
> 5090 IO.xs: In function 'XS_IO__Poll__poll':
>
> >> 5091 IO.xs:321:51: error: invalid application of 'sizeof' to
> incomplete type 'struct pollfd'
>
> 5092 321 | SV *tmpsv = sv_2mortal(NEWSV(999,nfd *
> sizeof(struct pollfd)));
>
> 5093 |
> ^~~~~~
>
> 5094 ../../embed.h:596:46: note: in definition of macro
> 'sv_2mortal'
>
> 5095 596 | #define sv_2mortal(a) Perl_sv_2mortal(aTHX_ a)
>
> 5096 | ^
>
> 5097 ../../handy.h:2258:22: note: in expansion of macro 'newSV'
>
> 5098 2258 | #define NEWSV(x,len) newSV(len)
>
> 5099 | ^~~~~
>
> 5100 IO.xs:321:28: note: in expansion of macro 'NEWSV'
>
> 5101 321 | SV *tmpsv = sv_2mortal(NEWSV(999,nfd *
> sizeof(struct pollfd)));
>
> 5102 | ^~~~~
>
> 5103 mv NDBM_File.xsc NDBM_File.c
>
> >> 5104 IO.xs:328:5: error: invalid use of undefined type 'struct
> pollfd'
>
> 5105 328 | fds[j].fd = SvIV(ST(i));
>
> 5106 | ^
>
> >> 5107 IO.xs:328:5: error: dereferencing pointer to incomplete type
> 'struct pollfd'
>
> >> 5108 IO.xs:330:5: error: invalid use of undefined type 'struct
> pollfd'
>
> 5109 330 | fds[j].events = (short)SvIV(ST(i));
>
> 5110 | ^
>
> >> 5111 IO.xs:332:5: error: invalid use of undefined type 'struct
> pollfd'
>
> 5112 332 | fds[j].revents = 0;
>
> 5113 | ^
>
> 5114
> /tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/ext/NDBM_File/../../miniperl
>
> "-I../../lib" -MExtUtils::Command::MM -e 'cp_nonempty' -- NDBM_File.bs
> ../../lib/auto/NDBM_File/NDBM_File.bs 644
>
> 5115 IO.xs:334:15: warning: implicit declaration of function
> 'poll'; did you mean 'powl'? [-Wimplicit-function-declaration]
>
> 5116 334 | if((ret = poll(fds,nfd,timeout)) >= 0) {
>
> 5117 | ^~~~
>
> 5118 | powl
>
> 5119 In file included from ../../perl.h:5644,
>
> 5120 from IO.xs:12:
>
> >> 5121 IO.xs:336:25: error: invalid use of undefined type 'struct
> pollfd'
>
> 5122 336 | sv_setiv(ST(i), fds[j].fd); i++;
>
> 5123 | ^
>
> 5124 ../../embed.h:674:46: note: in definition of macro 'sv_setiv'
>
> 5125 674 | #define sv_setiv(a,b) Perl_sv_setiv(aTHX_ a,b)
>
> 5126 | ^
>
> >> 5127 IO.xs:337:25: error: invalid use of undefined type 'struct
> pollfd'
>
> 5128 337 | sv_setiv(ST(i), fds[j].revents); i++;
>
> 5129 | ^
>
> 5130 ../../embed.h:674:46: note: in definition of macro 'sv_setiv'
>
> 5131 674 | #define sv_setiv(a,b) Perl_sv_setiv(aTHX_ a,b)
>
> 5132 | ^
>
> 5133 Running Mkbootstrap for Opcode ()
>
> 5134 cc -c -D_REENTRANT -D_GNU_SOURCE
> -DAPPLLIB_EXP="/home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/lib/perl5"
>
> -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/home/
>
>
> deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/gdbm-1.18.1-chqdjuttuqyeyrmsnm6yistdpigsguwq/include
>
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wall
> -Werror=declaration-after-statement -Wextra -Wc++-compat -Wwrite-strings
> -O2
>
> -DVERSION=\"1.14\" -DXS_VERSION=\"1.14\" -fPIC "-I../.."
> NDBM_File.c
>
> 5135 mv ListUtil.xsc ListUtil.c
>
> 5136 chmod 755 ../../../lib/auto/Encode/CN/CN.so
>
> 5137
> /tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/cpan/Scalar-List-Utils/../../miniperl
>
> "-I../../lib" -MExtUtils::Command::MM -e 'cp_nonempty' -- Util.bs
> ../../lib/auto/List/Util/Util.bs 644
>
> 5138 make[2]: Leaving directory
> `/tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/cpan/Encode/CN'
>
> >> 5139 make[1]: *** [IO.o] Error 1
>
> 5140 make[1]: Leaving directory
> `/tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/dist/IO'
>
> 5141 chmod 644 "Opcode.bs"
>
> 5142 "../../miniperl" "-I../../lib" "../../lib/ExtUtils/xsubpp"
> -typemap
> '/tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/ext/Opcode/../../lib/ExtUtils/typemap'
>
> Opcode.xs > Opcode.xsc
>
> 5143 make[1]: Entering directory
> `/tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/dist/IO'
>
> 5144 make[2]: Entering directory
> `/tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/cpan/Encode/EBCDIC'
>
> 5145 cc -c -D_REENTRANT -D_GNU_SOURCE
> -DAPPLLIB_EXP="/home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/lib/perl5"
>
> -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/home/
>
>
> deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/gdbm-1.18.1-chqdjuttuqyeyrmsnm6yistdpigsguwq/include
>
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wall
> -Werror=declaration-after-statement -Wextra -Wc++-compat -Wwrite-strings
> -O2
>
> -DVERSION=\"1.46_02\" -DXS_VERSION=\"1.46_02\" -fPIC
> "-I../.." -DPERL_EXT ListUtil.c
>
>
> ...
>
>
> 5170 Reading posix-bc (posix-bc)
>
> 5171
> /tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/cpan/Encode/EBCDIC/../../../miniperl
>
> "-I../../../lib" -MExtUtils::Command::MM -e 'cp_nonempty' -- EBCDIC.bs
> ../../../lib/auto/Encode/EBCDIC/EBCDIC.bs 644
>
> 5172 "../../../miniperl" "-I../../../lib"
> "../../../lib/ExtUtils/xsubpp" -nolinenumbers -typemap
> '/tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/cpan/Encode/EBCDIC/../../../lib/ExtUtils/typemap'
>
> EBCDIC.xs > E
>
> BCDIC.xsc
>
> 5173 In file included from ../../perl.h:5644,
>
> 5174 from IO.xs:12:
>
> 5175 IO.xs: In function 'XS_IO__Poll__poll':
>
> >> 5176 IO.xs:321:51: error: invalid application of 'sizeof' to
> incomplete type 'struct pollfd'
>
> 5177 321 | SV *tmpsv = sv_2mortal(NEWSV(999,nfd *
> sizeof(struct pollfd)));
>
> 5178 |
> ^~~~~~
>
> 5179 ../../embed.h:596:46: note: in definition of macro
> 'sv_2mortal'
>
> 5180 596 | #define sv_2mortal(a) Perl_sv_2mortal(aTHX_ a)
>
> 5181 | ^
>
> 5182 ../../handy.h:2258:22: note: in expansion of macro 'newSV'
>
> 5183 2258 | #define NEWSV(x,len) newSV(len)
>
> 5184 | ^~~~~
>
> 5185 IO.xs:321:28: note: in expansion of macro 'NEWSV'
>
> 5186 321 | SV *tmpsv = sv_2mortal(NEWSV(999,nfd *
> sizeof(struct pollfd)));
>
> 5187 | ^~~~~
>
> >> 5188 IO.xs:328:5: error: invalid use of undefined type 'struct
> pollfd'
>
> 5189 328 | fds[j].fd = SvIV(ST(i));
>
> 5190 | ^
>
> >> 5191 IO.xs:328:5: error: dereferencing pointer to incomplete type
> 'struct pollfd'
>
> >> 5192 IO.xs:330:5: error: invalid use of undefined type 'struct
> pollfd'
>
> 5193 330 | fds[j].events = (short)SvIV(ST(i));
>
> 5194 | ^
>
> >> 5195 IO.xs:332:5: error: invalid use of undefined type 'struct
> pollfd'
>
> 5196 332 | fds[j].revents = 0;
>
> 5197 | ^
>
> 5198 IO.xs:334:15: warning: implicit declaration of function
> 'poll'; did you mean 'powl'? [-Wimplicit-function-declaration]
>
> 5199 334 | if((ret = poll(fds,nfd,timeout)) >= 0) {
>
> 5200 | ^~~~
>
> 5201 | powl
>
> 5202 In file included from ../../perl.h:5644,
>
> 5203 from IO.xs:12:
>
> >> 5204 IO.xs:336:25: error: invalid use of undefined type 'struct
> pollfd'
>
> 5205 336 | sv_setiv(ST(i), fds[j].fd); i++;
>
> 5206 | ^
>
> 5207 ../../embed.h:674:46: note: in definition of macro 'sv_setiv'
>
> 5208 674 | #define sv_setiv(a,b) Perl_sv_setiv(aTHX_ a,b)
>
> 5209 | ^
>
> >> 5210 IO.xs:337:25: error: invalid use of undefined type 'struct
> pollfd'
>
> 5211 337 | sv_setiv(ST(i), fds[j].revents); i++;
>
> 5212 | ^
>
> 5213 ../../embed.h:674:46: note: in definition of macro 'sv_setiv'
>
> 5214 674 | #define sv_setiv(a,b) Perl_sv_setiv(aTHX_ a,b)
>
> 5215 | ^
>
> 5216 In file included from ODBM_File.xs:12:
>
> 5217
> /home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/gdbm-1.18.1-chqdjuttuqyeyrmsnm6yistdpigsguwq/include/dbm.h:35:12:
>
> warning: identifier 'delete' conflicts with C++ keyword [-Wc++-compat]
>
> 5218 35 | extern int delete (datum key);
>
> 5219 | ^~~~~~
>
> >> 5220 make[1]: *** [IO.o] Error 1
>
> 5221 make[1]: Leaving directory
> `/tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-src/dist/IO'
>
> 5222 Unsuccessful make(dist/IO): code=512 at make_ext.pl line 570.
>
> >> 5223 make: *** [lib/auto/IO/IO.so] Error 25
>
> 5224 make: *** Waiting for unfinished jobs....
>
> 5225 cc -c -I./Encode -I../Encode -D_REENTRANT -D_GNU_SOURCE
> -DAPPLLIB_EXP="/home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/lib/perl5"
>
> -fwrapv -fno-strict-aliasing -pipe -fstack-pro
>
> tector-strong
> -I/home/deal.ii/spack/opt/spack/linux-centos7-ivybridge/gcc-9.2.0/gdbm-1.18.1-chqdjuttuqyeyrmsnm6yistdpigsguwq/include
>
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wall
> -Werror=declaration-after-statement -Wextra -Wc++-compat
>
> -Wwrite-strings -O2 -DVERSION=\"2.02\"
> -DXS_VERSION=\"2.02\" -fPIC "-I../../.." ebcdic_t.c
>
> 5226 ODBM_File.c: In function 'XS_ODBM_File_STORE':
>
> 5227 ODBM_File.c:406:6: warning: variable 'flags' set but not used
> [-Wunused-but-set-variable]
>
> 5228 406 | int flags;
>
> 5229 | ^~~~~
>
>
> See build log for details:
>
>
> /tmp/deal.ii/spack-stage/perl-5.26.2-zoihbi4ixpd7iyaf5qrbvld62itpgde3/spack-build-out.txt
>
> Can you perhaps provide suggestions on what possibly went wrong? To add
> further information, I did not add any limit version of suite-sparse, i.e.
>
> [deal.ii@localhost spack]$ more ~/.spack/linux/packages.yaml
>
> packages:
>
> all:
>
> compiler: [gcc]
>
> providers:
>
> mpi: [openmpi]
>
> openmpi:
>
> version: [3.1.4]
>
> paths:
>
> [email protected]%[email protected]: /usr/local/
>
> buildable: False
>
> dealii:
>
> variants: +optflags~python
>
> [deal.ii@localhost spack]$ more ~/.spack/linux/compilers.yaml
>
> compilers:
>
> - compiler:
>
> environment: {}
>
> extra_rpaths: []
>
> flags: {}
>
> modules: []
>
> operating_system: centos7
>
> paths:
>
> cc: /usr/bin/gcc
>
> cxx: /usr/bin/g++
>
> f77: /usr/bin/gfortran
>
> fc: /usr/bin/gfortran
>
> spec: [email protected]
>
> target: x86_64
>
> - compiler:
>
> environment: {}
>
> extra_rpaths: []
>
> flags: {}
>
> modules: []
>
> operating_system: centos7
>
> paths:
>
> cc: /usr/local/bin/gcc
>
> cxx: /usr/local/bin/g++
>
> f77: /usr/local/bin/gfortran
>
> fc: /usr/local/bin/gfortran
>
> spec: [email protected]
>
> target: x86_64
>
> I take advantage to ask further help with lapack. I do see a lapack
> library installed,
>
> [deal.ii@localhost spack]$ ls -lta /usr/lib64/liblapacke*.*
>
> lrwxrwxrwx. 1 root root 19 18 ott 2018 /usr/lib64/liblapacke.so.3
> -> liblapacke.so.3.4.2
>
> lrwxrwxrwx. 1 root root 19 18 ott 2018 /usr/lib64/liblapacke.so.3.4
> -> liblapacke.so.3.4.2
>
> -rwxr-xr-x. 1 root root 1965960 2 ago 2017
> /usr/lib64/liblapacke.so.3.4.2
>
> but I cannot see any blas. What would you recommend me to set in the
> System provided packages ? I appreciate your help as always
>
> Alberto
>
>
>
>
>
>
>
>
>
>
--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see
https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/350afaa2-a785-419f-ad75-bd323265fd87%40googlegroups.com.