[petsc-users] Cmake problem on an old cluster

Danyang Su danyang.su at gmail.com
Thu Jan 19 23:38:34 CST 2023


Hi Satish,

For some unknown reason during Cmake 3.18.5 installation, I get error "Cannot find a C++ compiler that supports both C++11 and the specified C++ flags.". The system installed Cmake 3.2.3 is way too old. 

I will just leave it as is since superlu_dist is optional in my model. 

Thanks for your suggestions to make it work,

Danyang

On 2023-01-19, 4:52 PM, "Satish Balay" <balay at mcs.anl.gov <mailto:balay at mcs.anl.gov>> wrote:


Looks like .bashrc is getting sourced again during the build process [as make creates new bash shell during the build] - thus overriding the env variable that's set.


Glad you have a working build now. Thanks for the update!


BTW: superlu-dist requires cmake 3.18.1 or higher. You could check if this older version of cmake builds on this cluster [if you want to give superlu-dist a try again]


Satish




On Thu, 19 Jan 2023, Danyang Su wrote:


> Hi Satish,
> 
> That's a bit strange since I have already use export
> PETSC_DIR=/home/danyangs/soft/petsc/petsc-3.18.3.
> 
> Yes, I have petsc 3.13.6 installed and has PETSC_DIR set in the bashrc file.
> After changing PETSC_DIR in the bashrc file, PETSc can be compiled now.
> 
> Thanks,
> 
> Danyang
> 
> On 2023-01-19 3:58 p.m., Satish Balay wrote:
> >> /home/danyangs/soft/petsc/petsc-3.13.6/src/sys/makefile contains a
> >> directory not on the filesystem: ['\\']
> >
> > Its strange that its complaining about petsc-3.13.6. Do you have this
> > location set in your .bashrc or similar file - that's getting sourced during
> > the build?
> >
> > Perhaps you could start with a fresh copy of petsc and retry?
> >
> > Also suggest using 'arch-' prefix for PETSC_ARCH i.e
> > 'arch-intel-14.0.2-openmpi-1.6.5' - just in case there are some bugs lurking
> > with skipping build files in this location
> >
> > Satish
> >
> >
> > On Thu, 19 Jan 2023, Danyang Su wrote:
> >
> >> Hi Barry and Satish,
> >>
> >> I guess there is compatibility problem with some external package. The
> >> latest
> >> CMake complains about the compiler, so I remove superlu_dist option since I
> >> rarely use it. Then the HYPRE package shows "Error: Hypre requires C++
> >> compiler. None specified", which is a bit tricky since c++ compiler is
> >> specified in the configuration so I comment the related error code in
> >> hypre.py
> >> during configuration. After doing this, there is no error during PETSc
> >> configuration but new error occurs during make process.
> >>
> >> **************************ERROR*************************************
> >> Error during compile, check
> >> intel-14.0.2-openmpi-1.6.5/lib/petsc/conf/make.log
> >> Send it and intel-14.0.2-openmpi-1.6.5/lib/petsc/conf/configure.log to
> >> petsc-maint at mcs.anl.gov <mailto:petsc-maint at mcs.anl.gov>
> >> ********************************************************************
> >>
> >> It might be not worth checking this problem since most of the users do not
> >> work on such old cluster. Both log files are attached in case any developer
> >> wants to check. Please let me know if there is any suggestions and I am
> >> willing to make a test.
> >>
> >> Thanks,
> >>
> >> Danyang
> >>
> >> On 2023-01-19 11:18 a.m., Satish Balay wrote:
> >>> BTW: cmake is required by superlu-dist not petsc.
> >>>
> >>> And its possible that petsc might not build with this old version of
> >>> openmpi
> >>> - [and/or the externalpackages that you are installing - might not build
> >>> with this old version of intel compilers].
> >>>
> >>> Satish
> >>>
> >>> On Thu, 19 Jan 2023, Barry Smith wrote:
> >>>
> >>>> Remove
> >>>> --download-cmake=/home/danyangs/soft/petsc/petsc-3.18.3/packages/cmake-3.25.1.tar.gz
> >>>> and install CMake yourself. Then configure PETSc with
> >>>> --with-cmake=directory you installed it in.
> >>>>
> >>>> Barry
> >>>>
> >>>>
> >>>>> On Jan 19, 2023, at 1:46 PM, Danyang Su <danyang.su at gmail.com <mailto:danyang.su at gmail.com>> wrote:
> >>>>>
> >>>>> Hi All,
> >>>>>
> >>>>> I am trying to install the latest PETSc on an old cluster but always get
> >>>>> some error information at the step of cmake. The system installed cmake
> >>>>> is
> >>>>> V3.2.3, which is out-of-date for PETSc. I tried to use --download-cmake
> >>>>> first, it does not work. Then I tried to clean everything (delete the
> >>>>> petsc_arch folder), download the latest cmake myself and pass the path
> >>>>> to
> >>>>> the configuration, the error is still there.
> >>>>>
> >>>>> The compiler there is a bit old, intel-14.0.2 and openmpi-1.6.5. I have
> >>>>> no
> >>>>> problem to install PETSc-3.13.6 there. The latest version cannot pass
> >>>>> configuration, unfortunately. Attached is the last configuration I have
> >>>>> tried.
> >>>>>
> >>>>> --with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90
> >>>>> --download-cmake=/home/danyangs/soft/petsc/petsc-3.18.3/packages/cmake-3.25.1.tar.gz
> >>>>> --download-mumps --download-scalapack --download-parmetis
> >>>>> --download-metis
> >>>>> --download-ptscotch --download-fblaslapack --download-hypre
> >>>>> --download-superlu_dist --download-hdf5=yes --with-hdf5-fortran-bindings
> >>>>> --with-debugging=0 COPTFLAGS="-O2 -march=native -mtune=native"
> >>>>> CXXOPTFLAGS="-O2 -march=native -mtune=native" FOPTFLAGS="-O2
> >>>>> -march=native
> >>>>> -mtune=native"
> >>>>>
> >>>>> Is there any solution for this.
> >>>>>
> >>>>> Thanks,
> >>>>>
> >>>>> Danyang
> >>>>>
> >>>>>
> >>>>> <configure.log>
> 






More information about the petsc-users mailing list