the symbol is actually defined in libsci_mpi (blas, lapack, scalapack…this is really crazy) Since libsci_mpi has ScaLAPACK 2.0.2, I guess I will be fine linking with that and obtain a working MUMPS.
Thanks Stefano On Feb 25, 2015, at 11:10 PM, Barry Smith <[email protected]> wrote: > > The issue is here in Scalapack.py > > class Configure(config.package.Package): > def __init__(self, framework): > config.package.Package.__init__(self, framework) > self.download = > ['http://www.netlib.org/scalapack/scalapack-2.0.2.tgz', > > 'http://ftp.mcs.anl.gov/pub/petsc/externalpackages/scalapack-2.0.2.tgz'] > self.includes = [] > self.liblist = [[],['libscalapack.a']] > ^^^^^^^^ > > we first check for scalapack in the "default system libraries" and then only > check in libscalapack.a if it is not in the "default system libraries". > > Cray has all kinds of crazy stuff like scalapack in the default system > libraries and hence finds the symbol pssytrd before it ever checks in the > location where we built it. > > Now the problem is even if we remove the [] from the > [[],['libscalapack.a']] and thus explicitly list the downloaded library > location when linking code the linker will find both libraries and we have no > control over which one it actually uses so it could end up using the Cray > one. > > If you really want to use the download one instead of the installed one you > need to poke around the Cray documentation and figure out if you can remove > the automatic linking of the Cray one. Perhaps turning off some module or > something? > > Barry > > > >> On Feb 25, 2015, at 1:58 PM, Stefano Zampini <[email protected]> >> wrote: >> >> I just configured on a Cray XC40 with downloading MUMPS and Scalapack , and >> it seems that something is wrong when creating petscvariables. >> SCALAPACK_LIB is empty and -lscalapack does not appear in PETSC_EXTERNAL_LIB. >> Attached a configure.log >> >> <configure.log> >
