[petsc-users] Undefined reference in PETSc 3.13+ with old MPI version

Junchao Zhang junchao.zhang at gmail.com
Sat Apr 10 17:32:41 CDT 2021


Danyang,
  Could you try branch jczhang/fix-mpi3-win with your old configuration
(i.e., use system mpicc)? Note the MR 3849
<https://gitlab.com/petsc/petsc/-/merge_requests/3849> is based off latest
petsc-3.15 release
  Thanks.
--Junchao Zhang


On Sat, Apr 10, 2021 at 4:36 PM Junchao Zhang <junchao.zhang at gmail.com>
wrote:

> Hi, Danyang,
>
> Send the configure.log.  Also, PETSc does not need MPI_Win_allocate etc to
> work. I will have a look.
>
> --Junchao Zhang
>
>
> On Sat, Apr 10, 2021 at 2:47 PM Danyang Su <danyang.su at gmail.com> wrote:
>
>> Hi Barry,
>>
>>
>>
>> I tried this option before but get ‘Error running configure on OpenMPI’
>>
>>
>>
>>
>> *******************************************************************************
>>
>>          UNABLE to CONFIGURE with GIVEN OPTIONS    (see configure.log
>> for details):
>>
>>
>> -------------------------------------------------------------------------------
>>
>> Error running configure on OPENMPI
>>
>>
>> *******************************************************************************
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/configure.py", line
>> 456, in petsc_configure
>>
>>     framework.configure(out = sys.stdout)
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/framework.py",
>> line 1253, in configure
>>
>>     self.processChildren()
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/framework.py",
>> line 1242, in processChildren
>>
>>     self.serialEvaluation(self.childGraph)
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/framework.py",
>> line 1217, in serialEvaluation
>>
>>     child.configure()
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/package.py",
>> line 1144, in configure
>>
>>     self.executeTest(self.configureLibrary)
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/base.py",
>> line 140, in executeTest
>>
>>     ret = test(*args,**kargs)
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/package.py",
>> line 902, in configureLibrary
>>
>>     for location, directory, lib, incl in self.generateGuesses():
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/package.py",
>> line 476, in generateGuesses
>>
>>     d = self.checkDownload()
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/packages/OpenMPI.py",
>> line 56, in checkDownload
>>
>>     return self.getInstallDir()
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/package.py",
>> line 365, in getInstallDir
>>
>>     installDir = self.Install()
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/packages/OpenMPI.py",
>> line 63, in Install
>>
>>     installDir = config.package.GNUPackage.Install(self)
>>
>>   File
>> "/global/home/danyangs/soft/petsc/petsc-3.14.6/config/BuildSystem/config/package.py",
>> line 1667, in Install
>>
>>     raise RuntimeError('Error running configure on ' + self.PACKAGE)
>>
>>
>> ================================================================================
>>
>> Finishing configure run at Sat, 10 Apr 2021 11:57:20 -0700
>>
>>
>> ================================================================================
>>
>>
>>
>> Thanks,
>>
>>
>>
>> Danyang
>>
>>
>>
>> *From: *Barry Smith <bsmith at petsc.dev>
>> *Date: *Saturday, April 10, 2021 at 10:31 AM
>> *To: *Danyang Su <danyang.su at gmail.com>
>> *Cc: *"petsc-users at mcs.anl.gov" <petsc-users at mcs.anl.gov>
>> *Subject: *Re: [petsc-users] Undefined reference in PETSc 3.13+ with old
>> MPI version
>>
>>
>>
>>
>>
>>   Depending on the network you can remove the ./configure
>> options --with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90  and use instead
>> --with-cc=icc --with-cxx=icpc and--with-fc=ifort --download-openmpi
>>
>>
>>
>>   Barry
>>
>>
>>
>>
>>
>> On Apr 10, 2021, at 12:18 PM, Danyang Su <danyang.su at gmail.com> wrote:
>>
>>
>>
>> Dear PETSc developers and users,
>>
>>
>>
>> I am trying to install the latest PETSc version on an ancient cluster.
>> The OpenMPI version is 1.6.5 and Compiler is Intel 14.0, which are the
>> newest on that cluster. I have no problem to install PETSc up to version
>> 3.12.5. However, if I try to use PETSc 3.13+, there are three undefined
>> reference errors in MPI_Win_allocate, MPI_Win_attach and
>> MPI_Win_create_dynamic. I know these three functions are available from
>> OpenMPI 2.0+. Because the cluster is not in technical support anymore,
>> there is no way I can install new OpenMPI version or do some update. Is it
>> possible to disable these three functions in PETSc 3.13+ version?
>>
>>
>>
>> The errors occur in ‘make check’ step:
>>
>> /home/dsu/soft/petsc/petsc-3.13.0/linux-intel-openmpi/lib/libpetsc.so:
>> undefined reference to `MPI_Win_allocate'
>>
>> /home/dsu/soft/petsc/petsc-3.13.0/linux-intel-openmpi/lib/libpetsc.so:
>> undefined reference to `MPI_Win_attach'
>>
>> /home/dsu/soft/petsc/petsc-3.13.0/linux-intel-openmpi/lib/libpetsc.so:
>> undefined reference to `MPI_Win_create_dynamic'
>>
>>
>>
>> The configuration used is shown below:
>>
>> ./configure --with-cc=mpicc --with-cxx=mpicxx --with-fc=mpif90
>> --download-mumps --download-scalapack --download-parmetis --download-metis
>> --download-fblaslapack --download-hypre --download-superlu
>> --download-hdf5=yes --with-debugging=0 COPTFLAGS="-O3 -march=native
>> -mtune=native" CXXOPTFLAGS="-O3 -march=native -mtune=native" FOPTFLAGS="-O3
>> -march=native -mtune=nativels"
>>
>>
>>
>> Thanks,
>>
>>
>>
>> Danyang
>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20210410/8c701f1d/attachment.html>


More information about the petsc-users mailing list