Dear John, As Matt says, the Firedrake installer will use the Firedrake fork of PETSc. To use the main PETSc repo you need to build PETSc outside Firedrake, and then tell the Firedrake installer about it. You do that as follows: 1. Clone the main PETSc repo and configure and build using their instructions. You checkout the branch you want before configuring. Firedrake depends on a particular set of PETSc configure options being set. You access this list of options by running: python3 firedrake-install --show-petsc-configure-options 1. Set PETSC_DIR and PETSC_ARCH 2. Run firedrake-install passing the --honour-petsc-path option. Note the spelling of “honour”. If you’re mucking about inside PETSc, you probably want to install Firedrake with external PETSc any event, even if the branches you want are on our fork. Cheers, David -- Dr David A. Ham Reader in Computational Mathematics Department of Mathematics Imperial College London From: firedrake-bounces@imperial.ac.uk <firedrake-bounces@imperial.ac.uk> on behalf of Matthew Knepley <knepley@gmail.com> Date: Saturday, 23 April 2022 at 01:03 To: John Snyder <b17jps@me.com> Cc: firedrake <firedrake@imperial.ac.uk>, petsc-maint <petsc-maint@mcs.anl.gov> Subject: Re: [firedrake] [petsc-maint] Firedrake - PETSC CONFIGURATION CRASH On Fri, Apr 22, 2022 at 10:58 AM John Snyder via petsc-maint <petsc-maint@mcs.anl.gov<mailto:petsc-maint@mcs.anl.gov>> wrote: Satish, I must be an idiot. I tried using your potential fix, But I cannot find the branch? I looked in fired rack and PETSc GitHub but searching I was unable to locate the repo. I tried: Notice that this is cloning the FIredrake fork of PETSc, which probably does not have this branch. I have added them to this thread. Thanks, Matt ... 2022-04-22 09:28:47,265 DEBUG Running command 'git clone -q --recursive https://github.com/firedrakeproject/petsc.git' 2022-04-22 09:30:37,982 DEBUG 2022-04-22 09:30:37,991 INFO Successfully cloned repository petsc. 2022-04-22 09:30:38,001 DEBUG Old path '/data/gpfs/Users/l1057678/firedrake-new/build/src' 2022-04-22 09:30:38,001 DEBUG Pushing path '/data/gpfs/Users/l1057678/firedrake-new/build/src/petsc' 2022-04-22 09:30:38,001 INFO Checking out branch balay/fix-executables-search-path 2022-04-22 09:30:38,001 DEBUG Running command 'git checkout -q balay/fix-executables-search-path' 2022-04-22 09:30:38,031 DEBUG error: pathspec 'balay/fix-executables-search-path' did not match any file(s) known to git. 2022-04-22 09:30:38,031 ERROR Failed to check out branch balay/fix-executables-search-path 2022-04-22 09:30:38,031 DEBUG Popping path '/data/gpfs/Users/l1057678/firedrake-new/build/src/petsc' 2022-04-22 09:30:38,031 DEBUG New path '/data/gpfs/Users/l1057678/firedrake-new/build/src’ I used the following: /hrtc/apps/scripting/anaconda3/x86_64/2020.02/bin/python3 ./firedrake-install --no-package-manager --venv-name build --tinyasm --disable-ssh --minimal-petsc --slepc --documentation-dependencies --install thetis --install gusto --install icepack --install irksome --install femlium --package-branch petsc balay/fix-executables-search-path --package-branch slepc balay/fix-executables-search-path What am I doing wrong? Best Regards, John P.S. Thank you for all you assistance. On Apr 21, 2022, at 1:24 PM, Satish Balay <balay@mcs.anl.gov<mailto:balay@mcs.anl.gov>> wrote: I pushed a potential fix [off release] in branch balay/fix-executables-search-path - can you try it? [if you need this fix on main branch - you can merge it over locally - and test] Satish On Thu, 21 Apr 2022, Satish Balay via petsc-maint wrote: --with-executables-search-path=/hrtc/apps/devtools/cmake/x86_64/3.8.2/bin:/hrtc/apps/scripting/anaconda3/x86_64/2020.02/sbin:/hrtc/apps/scripting/anaconda3/x86_64/2020.02/bin:/hrtc/apps/mpi/openmpi/4.0.1/RDHPC/gcc/8.2.0/bin:/apps/gcc/8.2.0/x86_64/libexec/gcc/x86_64-pc-linux-gnu/8.2.0:/apps/gcc/8.2.0/x86_64/bin:.:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/ibutils/bin:/apps/slurm/x86/20.02.0/bin:/apps/slurm/x86/20.02.0/sbin:/usr/bin Hm - did this option ever work? [I don't remember seeing this in a very long time I suspect its expecting a list - in python notation [and not in PATH notation]. So probably needs fixing. But do you need this option? Satish On Thu, 21 Apr 2022, John Snyder via petsc-maint wrote: Team, Please note, firedrake installation fails !!! Configuring PETSc to compile on your system ============================================================================================= TESTING: configureExternalPackagesDir from config.framework(/data/gpfs/Users/l1057678/firedrake-new/build/src/petsc/config/BuildSystem/config/framework.py:1030) TESTING: configureDebuggers from config.utilities.debuggers(/data/gpfs/Users/l1057678/firedrake-new/build/src/petsc/config/BuildSystem/config/utilities/debuggers.py:20) TESTING: configureDirectories from PETSc.options.petscdir(/data/gpfs/Users/l1057678/firedrake-new/build/src/petsc/config/PETSc/options/petscdir.py:22) ******************************************************************************* CONFIGURATION CRASH (Please send configure.log to petsc-maint@mcs.anl.gov<mailto:petsc-maint@mcs.anl.gov><mailto:petsc-maint@mcs.anl.gov>) ===================================================================================================================== This failure during install is from: export PETSC_CONFIGURE_OPTIONS="--with-cc=mpicc --CC=mpicc --CXX=mpic++ --FC=mpifort --download-openblas --with-executables-search-path=${PATH}" --download-ml --download-mpich --download-pastix --download-ptscotch --with-cxx-dialect=C++11 --download-eigen=/data/gpfs/Users/l1057678/firedrake-spack/firedrake/src/eigen-3.3.3.tgz --with-fortran-bindings=0 --download-cmake --with-debugging=0 --download-hdf5 --download-superlu_dist --download-netcdf --with-c2html=0 --download-suitesparse --download-scalapack --download-hypre --download-pnetcdf --with-shared-libraries=1 --download-hwloc --with-bison-exec=/usr/bin/bison /hrtc/apps/scripting/anaconda3/x86_64/2020.02/bin/python3 ./firedrake-install --no-package-manager --venv-name build --tinyasm --disable-ssh --minimal-petsc --slepc --documentation-dependencies --install thetis --install gusto --install icepack --install irksome --install femlium --package-branch petsc connorjward/merge-upstream --package-branch slepc connorjward/merge-upstream Please see attached firedrake-install.log and petsc configure.log Best Regard, John P.S. Any and all assistance is greatly appreciated. -- What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead. -- Norbert Wiener https://www.cse.buffalo.edu/~knepley/<http://www.cse.buffalo.edu/~knepley/>