[petsc-users] petsc+chombo

Juha Jäykkä juhaj at iki.fi
Fri Oct 2 16:03:55 CDT 2015


I'm sure that fixes it, but I would have hoped there is a proper way of just 
configuring and making PETSc with --download-chombo. I.e. without patching 
PETSc first. If there is no such way, I'm happy to apply the patch, but it is 
really a last resort for 3.6; for > 3.6 it would of course be fine as it could 
be released with the patch applied.

Cheers,
Juha

On Friday 02 Oct 2015 13:23:40 Barry Smith wrote:
>   I think Satish already told you the fix. Please let us know if it does not
> work.
> 
> Hm - we usually try to avoiding creating binaries in externalpackages
> [if not needed] - esp the examples/tests.
> 
> So perhaps chombo shoul have the following change.
> 
> Satish
> 
> ------
> diff --git a/config/BuildSystem/config/packages/Chombo.py
> b/config/BuildSystem/config/packages/Chombo.py index effbca6..7a13b0a
> 100644
> --- a/config/BuildSystem/config/packages/Chombo.py
> +++ b/config/BuildSystem/config/packages/Chombo.py
> @@ -110,7 +110,7 @@ class Configure(config.package.Package):
>           raise RuntimeError('Error running make on Chombo: config value not
> found') config_value=poutput.split('=')[1]
>         self.logPrint('Chombo installed using config=%s\n'%config_value)
> -        output,err,ret = config.package.Package.executeShellCommand('cd
> '+os.path.join(self.packageDir,'lib') +' && make clean && make all',
> timeout=2500, log = self.log) +        output,err,ret =
> config.package.Package.executeShellCommand('cd
> '+os.path.join(self.packageDir,'lib') +' && make clean && make lib',
> timeout=2500, log = self.log) output,err,ret =
> config.package.Package.executeShellCommand('cd
> '+self.packageDir+self.installSudo+'&& cp -f
> lib/lib*.'+self.setCompilers.AR_LIB_SUFFIX+'
> '+os.path.join(self.installDir,self.libdir,'')+' &&  '+self.installSudo+'cp
> -f lib/include/*.H '+os.path.join(self.installDir,self.includedir,''),
> timeout=2500, log = self.log) except RuntimeError, e:
>         raise RuntimeError('Error running make on Chombo: '+str(e))
> 
> > On Oct 2, 2015, at 4:38 AM, Juha Jaykka <juhaj at iki.fi> wrote:
> > 
> > Dear Barry,
> > 
> > Please find the configure.log at http://www.iki.fi/~juhaj/configure.log.
> > 
> > On a more general level, I wonder if the chombo-petsc interoperability is
> > documented anywhere? I grepped through the examples and came up blank.
> > 
> > Cheers,
> > Juha
> > 
> > On Thursday 01 Oct 2015 09:53:26 Barry Smith wrote:
> >>  We absolutely NEED configure.log to help you.
> >>  
> >>  Barry
> >>  
> >>> On Oct 1, 2015, at 9:24 AM, Juha Jaykka <juhaj at iki.fi> wrote:
> >>> 
> >>> Hi list,
> >>> 
> >>> I'm trying to compile PETSc 3.6 with --download-chombo, but keep
> >>> failing.
> >>> It seems to me the chombo build system is not told to link in
> >>> libgfortran.so, but no matter how I try to convince PETSc to add that,
> >>> it
> >>> won't. How should this be used, please?
> >>> 
> >>> The full configure line is
> >>> 
> >>> ./configure --prefix=/home/juhaj/progs+3.6/petsc --with-shared-libraries
> >>> --
> >>> with-debugging=0 \
> >>> 
> >>>         --useThreads 0 --with-clanguage=C++ --with-c-support \
> >>>         --with-fortran-interfaces=1 \
> >>>         --with-mpi=1 --with-mpi-shared=1 \
> >>> 	  
> >>> 	  --with-blas-lapack-include=/usr/include/openblas --with-blas-
> >>> 
> >>> lib=/usr/lib/openblas-base/libblas.so
> >>> --with-lapack-lib=/usr/lib/openblas-
> >>> base/liblapack.so \
> >>> 
> >>>         --with-scalapack=1 --with-scalapack-include=/usr/include \
> >>>         --with-scalapack-lib=/usr/lib/libscalapack-openmpi.so \
> >>>         --with-mumps=0 \
> >>> 	  
> >>> 	  --with-suitesparse=0 \
> >>> 	  
> >>>         --with-spooles=1 --with-spooles-include=/usr/include/spooles \
> >>>         --with-spooles-lib=/usr/lib/libspooles.so \
> >>>         --with-hypre=1 --with-hypre-include=/usr/include --with-hypre-
> >>> 
> >>> lib=/usr/lib/libHYPRE_IJ_mv-2.8.0b.so \
> >>> 
> >>>         --with-fftw=1 --with-fftw-include=/usr/include \
> >>>         --with-fftw-lib=[/usr/lib/x86_64-linux-
> >>> 
> >>> gnu/libfftw3.so,/usr/lib/x86_64-linux-gnu/libfftw3_mpi.so] \
> >>> 
> >>>         --with-hdf5=1 --with-hdf5-include=/usr/include/hdf5/openmpi
> >>>         --with-
> >>> 
> >>> hdf5-lib=/usr/lib/x86_64-linux-gnu/libhdf5_openmpi.so \
> >>> 
> >>> 	  --CXX_LINKER_FLAGS="-Wl,--no-as-needed -lgfortran" --LDFLAGS="-
> >>> 
> >>> lgfortran -g" --LIBS="-lgfortran" \
> >>> 
> >>> 	  --with-clean=1 --with-memalign=64 --with-log=0 --with-valgrind=1 \
> >>> 	  --with-afterimage=1 --with-afterimage-
> >>> 
> >>> include=/usr/include/libAfterImage
> >>> --with-afterimage-lib=/usr/lib/x86_64-
> >>> linux-gnu/libAfterImage.so \
> >>> 
> >>> 	  --with-boost=1 \
> >>> 	  --with-netcdf=1 --with-netcdf-include=/usr/include/ --with-netcdf-
> >>> 
> >>> lib=/usr/lib/libnetcdf.so \
> >>> 
> >>> 	  --with-triangle=0 \
> >>> 	  --with-numpy=1 \
> >>> 	  --with-hwloc=1  --with-external-packages-
> >>> 
> >>> dir=/home/juhaj/progs+3.6/automatic-downloads \
> >>> 
> >>> 	  --with-parmetis=0 --with-metis=0 \
> >>> 	  --with-tetgen=0 \
> >>> 	  --with-scalar-type=real --with-pic=1 --with-gnu-compilers=1 --with-
> >>> 
> >>> openmp=1 \
> >>> 
> >>> 	  --with-64-bit-indices \
> >>> 	  --download-chombo
> >>> 
> >>> and the final error in configure is
> >>> 
> >>> /bin/csh -f -c "mpicxx -g
> >>> o/2d.Linux.64.mpicxx.mpif90.DEBUG/testFourthOrderFillPatch.o   -
> >>> L/home/juhaj/progs+3.6/automatic-downloads/arch-linux2-cxx-
> >>> opt/Chombo/lib/test/AMRTimeDependent/../.. -
> >>> lamrtimedependent2d.Linux.64.mpicxx.mpif90.DEBUG -
> >>> lamrtools2d.Linux.64.mpicxx.mpif90.DEBUG -
> >>> lboxtools2d.Linux.64.mpicxx.mpif90.DEBUG -
> >>> lbasetools2d.Linux.64.mpicxx.mpif90.DEBUG
> >>> -Wl,-rpath,/usr/lib/x86_64-linux- gnu -L/usr/lib/x86_64-linux-gnu
> >>> -lhdf5_openmpi     -Wl,-
> >>> rpath,/usr/lib/openblas-base -L/usr/lib/openblas-base -llapack -Wl,-
> >>> rpath,/usr/lib/openblas-base -L/usr/lib/openblas-base -lblas  -o
> >>> testFourthOrderFillPatch2d.Linux.64.mpicxx.mpif90.DEBUG.ex |&  awk -f
> >>> /home/juhaj/progs+3.6/automatic-downloads/arch-linux2-cxx-
> >>> opt/Chombo/lib/test/AMRTimeDependent/../../mk/tempnam.awk"
> >>> /usr/bin/ld: /home/juhaj/progs+3.6/automatic-downloads/arch-linux2-cxx-
> >>> opt/Chombo/lib/test/AMRTimeDependent/../../libamrtools2d.Linux.64.mpicxx
> >>> .m
> >>> pif90.DEBUG.a(CFLeastSquares.o): undefined reference to symbol
> >>> '_gfortran_transfer_integer_write@@GFORTRAN_1.4'
> >>> /usr/lib/x86_64-linux-gnu/libgfortran.so.3: error adding symbols: DSO
> >>> missing from command line
> >>> collect2: error: ld returned 1 exit status
> >>> 
> >>> 
> >>> 
> >>> Cheers,
> >>> Juha

-- 
		 -----------------------------------------------
		| Juha Jäykkä, juhaj at iki.fi			|
		| http://koti.kapsi.fi/~juhaj/			|
		 -----------------------------------------------



More information about the petsc-users mailing list