Thanks, Matthew. I thought "--with-cc" "--with-cxx " "--with-fc" are all needed, according to the following webpage http://www.mcs.anl.gov/petsc/documentation/installation.html
Now, I configured as follows, and then compile. It seems ok. ./configure --prefix=/usr/local --with-cc=gcc --with-cxx=0 --with-fc=0 --with-mpi-include=/usr/include/mpi --with-mpi-lib=/usr/lib/libmpi.so 2015-01-17 11:29 GMT-08:00 Matthew Knepley <[email protected]>: > On Sat, Jan 17, 2015 at 1:18 PM, Jerry <[email protected]> wrote: > >> Hi, Matthew. >> >> Please find attached the configure log. Thanks. >> > > There are problems with C++ and this MPI install: > > Executing: g++ -o /tmp/petsc-FhcRYT/config.libraries/conftest -Wall > -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas -g -O0 > /tmp/petsc-FhcRYT/config.libraries/conftest.o -Wl,-rpath,/usr/lib > -L/usr/lib -lmpi -Wl,-rpath,/usr/lib/gcc/x86_64-linux-gnu/4.8 > -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -Wl,-rpath,/usr/lib/x86_64-linux-gnu > -L/usr/lib/x86_64-linux-gnu -Wl,-rpath,/lib/x86_64-linux-gnu > -L/lib/x86_64-linux-gnu -Wl,-rpath,/usr/lib/x86_64-linux-gnu > -L/usr/lib/x86_64-linux-gnu -ldl -lgcc_s -ldl > Possible ERROR while running linker: exit code 256 > stderr: > /tmp/petsc-FhcRYT/config.libraries/conftest.o: In function > `MPI::Intracomm::Intracomm()': > /usr/include/mpi/openmpi/ompi/mpi/cxx/intracomm.h:25: undefined reference > to `MPI::Comm::Comm()' > /tmp/petsc-FhcRYT/config.libraries/conftest.o: In function > `MPI::Intracomm::Intracomm(ompi_communicator_t*)': > /usr/include/mpi/openmpi/ompi/mpi/cxx/intracomm_inln.h:23: undefined > reference to `MPI::Comm::Comm()' > /tmp/petsc-FhcRYT/config.libraries/conftest.o: In function > `MPI::Op::Init(void (*)(void const*, void*, int, MPI::Datatype const&), > bool)': > /usr/include/mpi/openmpi/ompi/mpi/cxx/op_inln.h:122: undefined reference > to `ompi_mpi_cxx_op_intercept' > /tmp/petsc-FhcRYT/config.libraries/conftest.o:(.data.rel.ro._ZTVN3MPI3WinE[_ZTVN3MPI3WinE]+0x48): > undefined reference to `MPI::Win::Free()' > /tmp/petsc-FhcRYT/config.libraries/conftest.o:(.data.rel.ro._ZTVN3MPI8DatatypeE[_ZTVN3MPI8DatatypeE]+0x78): > undefined reference to `MPI::Datatype::Free()' > collect2: error: ld returned 1 exit status > > If you are using your own installation of MPI, it is best to use its > compiler wrappers: > > --with-cc=/usr/bin/mpicc --with-cxx=/usr/bin/mpicxx > > instead of the MPI flags (since it looks like you missed a library). Also, > do you really > need to build PETSc with C++? If not, leave it out using > > --with-cxx=0 > > Thanks, > > Matt > > >> -Jerry >> >> 2015-01-17 4:52 GMT-08:00 Matthew Knepley <[email protected]>: >> >>> Send the whole configure.log >>> >>> Thanks, >>> >>> Matt >>> >>> On Sat, Jan 17, 2015 at 4:07 AM, Jerry <[email protected]> wrote: >>> >>>> Hi, all. >>>> >>>> I am trying to configure&compile petsc. However, during configuring, I >>>> got the following error (C++ error! MPI_Finalize() could not be located!). >>>> I am also copying the last few lines in configure.log. >>>> >>>> But I am sure mpi.h is under the folder I specified >>>> (--with-mpi-include=/usr/include/mpi ) >>>> >>>> Any idea about the problem? Thanks. >>>> >>>> >>>> $$ ./configure --prefix=~/local --with-cc=gcc --with-cxx=g++ >>>> --with-fc=gfortran --with-mpi-include=/usr/include/mpi >>>> --with-mpi-lib=/usr/lib/libmpi.so >>>> >>>> >>>> =============================================================================== >>>> Configuring PETSc to compile on your >>>> system >>>> >>>> =============================================================================== >>>> TESTING: CxxMPICheck from >>>> config.packages.MPI(config/BuildSystem/config/packages******************************************************************************* >>>> UNABLE to CONFIGURE with GIVEN OPTIONS (see configure.log >>>> for details): >>>> >>>> ------------------------------------------------------------------------------- >>>> C++ error! MPI_Finalize() could not be located! >>>> >>>> ******************************************************************************* >>>> >>>> >>>> >>>> =========== Last few lines from configure.log ================ >>>> >>>> >>>> >>>> ******************************************************************************* >>>> File "./config/configure.py", line 272, in petsc_configure >>>> framework.configure(out = sys.stdout) >>>> File >>>> "/home/delia/workspace/programs/petsc/config/BuildSystem/config/framework.py", >>>> line 941, in configure >>>> child.configure() >>>> File >>>> "/home/delia/workspace/programs/petsc/config/BuildSystem/config/package.py", >>>> line 606, in configure >>>> self.executeTest(self.configureLibrary) >>>> File >>>> "/home/delia/workspace/programs/petsc/config/BuildSystem/config/base.py", >>>> line 126, in executeTest >>>> ret = test(*args,**kargs) >>>> File >>>> "/home/delia/workspace/programs/petsc/config/BuildSystem/config/packages/MPI.py", >>>> line 660, in CxxMPICheck >>>> raise RuntimeError('C++ error! MPI_Finalize() could not be >>>> located!') >>>> >>>> ================================================================================ >>>> Finishing Configure Run at Sat Jan 17 01:34:31 2015 >>>> >>>> ================================================================================ >>>> >>>> >>>> Jerry >>>> >>> >>> >>> >>> -- >>> What most experimenters take for granted before they begin their >>> experiments is infinitely more interesting than any results to which their >>> experiments lead. >>> -- Norbert Wiener >>> >> >> > > > -- > What most experimenters take for granted before they begin their > experiments is infinitely more interesting than any results to which their > experiments lead. > -- Norbert Wiener >
