If you need to reuse reusing previously installed packages - its best to install packages at a prefix location - and not list packages from a different PETSC_ARCH [as there are other stuff here that can conflict with the build]
1. Install all the packages. ./configure --prefix=$HOME/soft/packages --download-zlib --download-metis 2. Now use these preinstalled packages. ./configure --with-zlib-dir=$HOME/soft/packages -with-metis-dir=$HOME/soft/packages Note: you can avoid --download-zlib by using distro package in the VM. And --with-mpich-dir= should be --with-mpi-dir= Satish On Sun, 2 Aug 2020, Barry Smith wrote: > > Jacob, > > Since the reconfigure scripts are python you'll need to use python > variables to access environmental variables like os.environ['PETSC_DIR'] > > Barry > > > > On Aug 2, 2020, at 1:57 PM, Jacob Faibussowitsch <[email protected]> > > wrote: > > > > Hello All, > > > > I am reconfiguring an arch within a docker using the attached reconfigure > > script. My petsc dir is mounted via the following commands to docker -v > > ${PETSC_DIR}:/petsc:delegated. I am trying to use the existing arches on my > > native machine as the install directories for packages compiled within the > > docker images because SSH keys aren’t persistent in the images and hence > > git pull’s won’t work. I encountered this odd bug when trying > > —with-zlib-dir where it prepends the existing $PETSC_DIR to the directory > > name automatically, but this problem persists for any package. > > > > There is no configure.log generated since this I guess is early enough in > > the configure process, so unfortunately the only error output is the wall > > of error text from terminal. The error indicates that configure is passing > > ./[COMMAND LINE DIRECTORY] instead of [COMMAND LINE DIRECTORY] to configure. > > > > $ ls ${PETSC_DIR}/master-arch-darwin-c-debug/externalpackages/ > > Permissions Size User Date Modified Name > > drwxrwxr-x - root 8 Jul 16:07 petsc-pkg-mumps-d1a5c931b762 > > drwxr-xr-x - root 3 Jul 21:39 hdf5-1.12.0 > > drwxrwxr-x - root 1 Aug 21:34 netcdf-c-4.5.0 > > drwxr-xr-x - root 3 Jul 21:38 zlib-1.2.11 > > drwxr-xr-x - root 29 Jul 17:43 mpich-3.3.2 > > drwxr-xr-x - root 6 Jul 17:06 Chaco-2.2-p2 > > drwxr-xr-x - root 1 Aug 21:36 git.ctetgen > > drwxr-xr-x - root 1 Aug 21:34 git.exodusii > > drwxr-xr-x - root 1 Aug 21:31 git.med > > drwxr-xr-x - root 1 Aug 21:31 git.metis > > drwxr-xr-x - root 1 Aug 21:31 git.parmetis > > drwxr-xr-x - root 1 Aug 21:32 git.pnetcdf > > drwxr-xr-x - root 1 Aug 21:35 git.scalapack > > drwxr-xr-x - root 1 Aug 21:31 git.sowing > > drwxr-xr-x - root 1 Aug 21:34 git.triangle > > > > $ echo $PETSC_DIR > > /petsc > > > > $./reconfigure-arch-linux-c-debug > > =============================================================================== > > Configuring PETSc to compile on your system > > > > =============================================================================== > > ******************************************************************************* > > TypeError or ValueError possibly related to ERROR in COMMAND LINE > > ARGUMENT while running ./configure > > ------------------------------------------------------------------------------- > > Nonexistent directory: > > /petsc/${PETSC_DIR}/master-arch-darwin-c-debug/externalpackages/zlib-1.2.11 > > for key with-zlib-dir > > ******************************************************************************* > > > > > > File "/petsc/config/configure.py", line 449, in petsc_configure > > framework = > > config.framework.Framework(['--configModules=PETSc.Configure','--optionsModule=config.compilerOptions']+sys.argv[1:], > > loadArgDB = 0) > > File "/petsc/config/BuildSystem/config/framework.py", line 107, in > > __init__ > > self.createChildren() > > File "/petsc/config/BuildSystem/config/framework.py", line 324, in > > createChildren > > self.getChild(moduleName) > > File "/petsc/config/BuildSystem/config/framework.py", line 309, in > > getChild > > config.setupDependencies(self) > > File "/petsc/config/PETSc/Configure.py", line 91, in setupDependencies > > obj = self.registerPythonFile(package,'config.packages') > > File "/petsc/config/PETSc/Configure.py", line 49, in registerPythonFile > > utilityObj = > > self.framework.require(directory+utilityName, self) > > File "/petsc/config/BuildSystem/config/framework.py", line 329, in require > > config = self.getChild(moduleName, keywordArgs) > > File "/petsc/config/BuildSystem/config/framework.py", line 309, in > > getChild > > config.setupDependencies(self) > > File "/petsc/config/BuildSystem/config/packages/ADIOS.py", line 17, in > > setupDependencies > > self.zlib = framework.require('config.packages.zlib',self) > > File "/petsc/config/BuildSystem/config/framework.py", line 329, in require > > config = self.getChild(moduleName, keywordArgs) > > File "/petsc/config/BuildSystem/config/framework.py", line 307, in > > getChild > > config.setup() > > File "/petsc/config/BuildSystem/config/base.py", line 94, in setup > > script.Script.setup(self) > > File "/petsc/config/BuildSystem/script.py", line 108, in setup > > logger.Logger.setup(self) > > File "/petsc/config/BuildSystem/logger.py", line 75, in setup > > args.ArgumentProcessor.setup(self) > > File "/petsc/config/BuildSystem/args.py", line 76, in setup > > self.setupArguments(self.argDB) > > File "/petsc/config/BuildSystem/script.py", line 92, in setupArguments > > self.setupHelp(self.help) > > File "/petsc/config/BuildSystem/config/packages/zlib.py", line 16, in > > setupHelp > > config.package.Package.setupHelp(self, help) > > File "/petsc/config/BuildSystem/config/package.py", line 156, in setupHelp > > > > help.addArgument(self.PACKAGE,'-with-'+self.package+'-dir=<dir>',nargs.ArgDir(None,None,'Indicate > > the root directory of the '+self.name+' installation',mustExist = 1)) > > File "/petsc/config/BuildSystem/help.py", line 108, in addArgument > > self.argDB.setType(self.getArgName(name), argType, forceLocal = 1) > > File "/petsc/config/BuildSystem/RDict.py", line 222, in setType > > value.setValue(v.getValue()) > > File "/petsc/config/BuildSystem/nargs.py", line 325, in setValue > > raise ValueError('Nonexistent directory: '+str(value)+' for key > > '+str(self.key)) > > > > > > <reconfigure-arch-linux-c-debug.py> > > > > Best regards, > > > > Jacob Faibussowitsch > > (Jacob Fai - booss - oh - vitch) > > Cell: (312) 694-3391 > > > >
