FreeFem / FreeFem-sources

FreeFEM source code
https://freefem.org/
Other
746 stars 188 forks source link

problems when compiling on RH Linux #297

Closed atagomes closed 5 months ago

atagomes commented 8 months ago

I'm trying to compile FreeFEM++ on a RH Linux. Some info about the system: gcc 7.4 openmpi 3.1.5 cmake 3.18 I ran the following commands (just like in README.md), after cloning the project (using tag v4.14) into /scratch/mhm/antonio.gomes/FreeFem-sources and entering into this directory:

autoreconf -i
./configure --enable-download --enable-optim --prefix=/scratch/mhm/antonio.gomes/FreeFem-install
./3rdparty/getall -a
cd 3rdparty/ff-petsc/
make petsc-slepc

The compilation seems to go well. The problem appears when installing the PETSc libraries (see below). There seems to be no ownership issues with the involved directories.

...
    CLINKER fr/lib/libpetsc.so.3.20.2                                                
=========================================                                                       
Now to install the libraries do:                                                                
make PETSC_DIR=/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2 PETSC_A
RCH=fr install                                                                                  
=========================================                                                       
make[1]: Leaving directory '/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3
.20.2'                                                                                          
touch petsc-3.20.2/tag-make-real                                                                
cd petsc-3.20.2 && make PETSC_DIR=/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/p
etsc-3.20.2 PETSC_ARCH=fr install-lib                                                           
make[1]: Entering directory '/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-
3.20.2'                                                                                         
*** Using PETSC_DIR=/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2 PE
TSC_ARCH=fr ***                                                                                 
*** Installing PETSc at prefix location: /scratch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r  
***                                                                                             
Traceback (most recent call last):                                                              
  File "./config/install.py", line 454, in <module>                                             
    Installer(sys.argv[1:]).run()                                                               
  File "./config/install.py", line 448, in run                                                  
    self.runcopy()
  File "./config/install.py", line 427, in runcopy
    self.installIncludes()
  File "./config/install.py", line 323, in installIncludes
    self.copies.extend(self.copytree(self.rootIncludeDir, self.destIncludeDir,exclude = exclude)
)
  File "./config/install.py", line 262, in copytree
    raise shutil.Error(errors)
shutil.Error: [('/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/inclu
de/petsc', '/scratch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r/include/petsc', '[(\'/scratch/
mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/private\', \'/scr
atch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r/include/petsc/private\', \'[(\\\'/scratch/mhm/
antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/private/valgrind\\\',
 \\\'/scratch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r/include/petsc/private/valgrind\\\', \
\\'[(\\\\\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/p
etsc/private/valgrind\\\\\\\', \\\\\\\'/scratch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r/inc
lude/petsc/private/valgrind\\\\\\\', "[Errno 2] No such file or directory: \\\\\\\'/scratch/mhm/
antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/private/valgrind\\\\\
\\'")]\\\'), (\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/incl
ude/petsc/private/kernels\\\', \\\'/scratch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r/include
/petsc/private/kernels\\\', \\\'[(\\\\\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff
-petsc/petsc-3.20.2/include/petsc/private/kernels\\\\\\\', \\\\\\\'/scratch/mhm/antonio.gomes/Fr
eeFem-install/ff-petsc/r/include/petsc/private/kernels\\\\\\\', "[Errno 2] No such file or direc
tory: \\\\\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/
petsc/private/kernels\\\\\\\'")]\\\'), (\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/
ff-petsc/petsc-3.20.2/include/petsc/private/cpp\\\', \\\'/scratch/mhm/antonio.gomes/FreeFem-inst
all/ff-petsc/r/include/petsc/private/cpp\\\', \\\'[(\\\\\\\'/scratch/mhm/antonio.gomes/FreeFem-s
ources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/private/cpp\\\\\\\', \\\\\\\'/scratch/mhm/an
tonio.gomes/FreeFem-install/ff-petsc/r/include/petsc/private/cpp\\\\\\\', "[Errno 2] No such fil
e or directory: \\\\\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.
2/include/petsc/private/cpp\\\\\\\'")]\\\'), (\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rd
party/ff-petsc/petsc-3.20.2/include/petsc/private/khash\\\', \\\'/scratch/mhm/antonio.gomes/Free
Fem-install/ff-petsc/r/include/petsc/private/khash\\\', \\\'[(\\\\\\\'/scratch/mhm/antonio.gomes
/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/private/khash\\\\\\\', \\\\\\\'/sc
ratch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r/include/petsc/private/khash\\\\\\\', "[Errno 
2] No such file or directory: \\\\\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-pet
sc/petsc-3.20.2/include/petsc/private/khash\\\\\\\'")]\\\'), (\\\'/scratch/mhm/antonio.gomes/Fre
eFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/private\\\', \\\'/scratch/mhm/antonio.
gomes/FreeFem-install/ff-petsc/r/include/petsc/private\\\', "[Errno 2] No such file or directory
: \\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/pr
ivate\\\'")]\'), (\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/in
clude/petsc/finclude\', \'/scratch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r/include/petsc/fi
nclude\', \'[(\\\'/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/incl
ude/petsc/finclude\\\', \\\'/scratch/mhm/antonio.gomes/FreeFem-install/ff-petsc/r/include/petsc/
finclude\\\', "[Errno 2] No such file or directory: \\\'/scratch/mhm/antonio.gomes/FreeFem-sourc
es/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/finclude\\\'")]\'), (\'/scratch/mhm/antonio.gome
s/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc\', \'/scratch/mhm/antonio.gomes/F
reeFem-install/ff-petsc/r/include/petsc\', "[Errno 2] No such file or directory: \'/scratch/mhm/
antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc\'")]'), ('/scratch/mh
m/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include', '/scratch/mhm/antonio.g
omes/FreeFem-install/ff-petsc/r/include', "[Errno 2] No such file or directory: '/scratch/mhm/an
tonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include'")]                          
gmake[2]: *** [install-lib] Error 1                                                             
make[1]: *** [GNUmakefile:17: install-lib] Error 2                                              
make[1]: Leaving directory '/scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3
.20.2'                                                                                          
make: *** [Makefile:205: petsc-3.20.2/tag-install-real] Error 2                                 
prj- commented 8 months ago

Could you please share /scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/fr/lib/petsc/conf/configure.log, make.log, and install.log?

prj- commented 8 months ago

Also, what do you get with ls /scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/private/cpp?

atagomes commented 8 months ago

Please find enclosed configure.log and make.log. There's no install.log in that directory. configure.log make.log

atagomes commented 8 months ago

Regarding the contents of /scratch/mhm/antonio.gomes/FreeFem-sources/3rdparty/ff-petsc/petsc-3.20.2/include/petsc/private/cpp

total 140
drwxr-xr-x 2 antonio.gomes mhm  4096 Sep 28 22:04 .
drwxr-xr-x 6 antonio.gomes mhm 12288 Nov 30 16:15 ..
-rw-r--r-- 1 antonio.gomes mhm  1516 Sep 28 22:04 array.hpp
-rw-r--r-- 1 antonio.gomes mhm   698 Sep 28 22:04 crtp.hpp
-rw-r--r-- 1 antonio.gomes mhm  4392 Sep 28 22:04 functional.hpp
-rw-r--r-- 1 antonio.gomes mhm  2416 Sep 28 22:04 macros.hpp
-rw-r--r-- 1 antonio.gomes mhm  2087 Sep 28 22:04 memory.hpp
-rw-r--r-- 1 antonio.gomes mhm 15293 Sep 28 22:04 object_pool.hpp
-rw-r--r-- 1 antonio.gomes mhm  7153 Sep 28 22:04 register_finalize.hpp
-rw-r--r-- 1 antonio.gomes mhm  1109 Sep 28 22:04 tuple.hpp
-rw-r--r-- 1 antonio.gomes mhm  7513 Sep 28 22:04 type_traits.hpp
-rw-r--r-- 1 antonio.gomes mhm 51429 Sep 28 22:04 unordered_map.hpp
-rw-r--r-- 1 antonio.gomes mhm  9242 Sep 28 22:04 utility.hpp
balay commented 8 months ago

This is a strange error. I couldn't reproduce this on a local centos7 box [with python-3.6.8].

Does using a different version of python make a difference?

        LANG = "C.UTF-8"

Does changing LANG to en_US.UTF-8 make a difference?

prj- commented 8 months ago

@atagomes, any update on this, please?

atagomes commented 5 months ago

I'm sorry for the long time without an update, but I had to dedicate my time to other stuff. After a while trying with python and locale configurations (I'm not a superuser in the machine I'm trying to compile FreeFEM++), I resorted to the FreeFEM++ Docker image that is available and working nicely within Singularity.