← Back to team overview

dolfin team mailing list archive

Re: external petsc packages

 

On Fri, Jun 20, 2008 at 04:51:52PM -0500, Matthew Knepley wrote:
> On Fri, Jun 20, 2008 at 3:41 PM, Anders Logg <logg@xxxxxxxxx> wrote:
> > On Fri, Jun 20, 2008 at 06:08:04AM -0500, Matthew Knepley wrote:
> >> On Fri, Jun 20, 2008 at 3:13 AM, Ilmar Wilbers <ilmarw@xxxxxxxxx> wrote:
> >> > This issue keeps coming up again and again.
> >> >
> >> > The question is whether to use PETSC_TS_LIB or not. I think the last
> >> > email on this subject is this one:
> >> > http://article.gmane.org/gmane.comp.mathematics.fenics.dolfin/2124
> >>
> >> 1) PETSc ONLY modifies a library to fix bugs which the maintainers refuse to
> >>     fix,so you really should not be using an unmodified version.
> >>
> >> 2) I think we are fairly fast on updating to the latest version, and
> >> we always do
> >>     it if someone asks.
> >>
> >>    Matt
> >
> > Yes, but even so it's not a good idea that DOLFIN must depend on the
> > exact versions of libraries that PETSc chooses (however good that
> > reason may be).
> >
> > Say we have the following situation:
> >
> >  A depends on B and C
> >  B depends on C'
> >
> > where C' is a modified version of C. Then we shouldn't need to require
> > that A depends on C'.
> >
> > To be precise, we may take
> >
> >  A  = DOLFIN
> >  B  = PETSc
> >  C  = UMFPACK in Ubuntu
> >  C' = UMFPACK modified by PETSc
> 
> What modifications other than bug fixes are you talking about?

I don't know what modifications are usually in the PETSc-modified
packages, but I don't think it matters. I should be able to build an
application against the packages installed system-wide by my package
manager (in my case the standard Ubuntu-packages). I should not need
to build my applications against

/usr/local/lib/petsc/externalpackages/UMFPACKv4.3/linux-gnu-cxx-debug/UMFPACK/Lib/

PETSc can do this, but it should not force applications compiled
against PETSc to choose the PETSc-version if there's a system-wide
default version available.

> > DOLFIN should be able to depend on C and not on C'.
> >
> > This should all work fine as long as PETSc is built with
> >
> >  --with-shared=1
> >
> > because then there is a mechanism for resolving the dependencies.
> >
> > On the other hand, if PETSc is built with static libraries, then there
> > is no way to resolve this, other than forcing DOLFIN to use the same
> > libraries as PETSc. Right?
> 
> Just force PETSc to use the version you want. It will work fine as long as the
> package has no outstanding bugs.
> 
>    Matt

ok. So I guess there are two solutions:

1. Configure PETSc for shared libs. Then PETSc can download its own
version.

2. Configure PETSc to use the default version of the external package.

-- 
Anders

Attachment: signature.asc
Description: Digital signature


References