← Back to team overview

dolfin team mailing list archive

stale pkgconfig

 

Perhaps I have a strange usage pattern, but I decided to build Dolfin against
with a different PETSC_ARCH than I had used in the previous build.  Of course,
scons does not check on PETSC_ARCH if there are pkgconfig files hanging around.
I remembered this oddity and reset dolfin/scons so that the pkgconfig files
would be gone.  However, prefix/lib/pkgconfig is also checked so even though
there was nothing in the Dolfin directory or in my environment which pointed to
my old PETSC_ARCH, Dolfin was still trying to build against it.  I'm not aware
of any fix except to manually remove prefix/lib/pkgconfig/{petsc,slepc}.pc in
order to build against the new one.  I think there should be an option in the
scons build to ignore/regenerate the pkgconfig and a warning if the environment
variables don't match the pkgconfig variables.  It may be handy to be able to do
hg pull -u && scons even with a dirty environment, but there ought to an easier
way to make scons pay attention to the environment.

I'm also not sure that putting the current pkgconfig in prefix is necessarily a
friendly thing to do since there may be many different installs around.  For
instance, I have several of the combinations from
petsc-{2.3.3-p12,dev}{openmpi,mpich2}{c,c++}{debug,opt} and the one I am
currently building Dolfin with may not be the one I use for something else.  I
don't know of any other software that looks at petsc.pc since other software
generally just uses the current environment, but this isn't really an excuse for
forcefully writing config information for a different package into a potentially
global location.


If you think my usage is odd and are happy with the current build system, feel
free to ignore me.  I just feel like this is liable to trip people up.

Jed

Attachment: pgpdaJPxRe_rw.pgp
Description: PGP signature


Follow ups