[petsc-dev] Why is -I$PETSC_DIR/src/dm/mesh/sieve in CLINKER even when configured without Sieve?

Satish Balay balay at mcs.anl.gov
Tue Oct 12 11:48:30 CDT 2010


On Tue, 12 Oct 2010, Jed Brown wrote:

> This also isn't specific to me, every one of your configure.logs is equally
> relevant.  I get Satish's point that these paths end up being required when
> linking mixed languages with mixed vendors.

One more case: where one uses diferent version of gcc vs gfortran [or
g77] - or one of these are installed in a different location.

For eg: on Mac - gfortran paths are totally different than gcc paths.

>  So unless someone writes a special case for matching vendors, these
> paths will always exist.  It may be hard to make that special case
> robust, so perhaps it's not worth "fixing".  The only functional
> downside (provided these system paths actually come last, which is
> happening correctly post-valgrind-issue) is needing to relink after
> upgrading a compiler.

We've always maintained that one should configure/rebild after
changing any parameters. So compiler version upgrade is one
such. [yeah lot of changes usually work, but the ones that don't work
-generate petsc-maint requests. Also if this is truly an issue - then
I think the following [with the correct minima LIBS option] is a
workarround for such folks - so the situation isn't too bad..

'--with-clib-autodetect=0 --with-fortranlib-autodetect=0 --with-cxxlib-autodetect=0 LIBS=-lgfortran'

Satish



More information about the petsc-dev mailing list