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> 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> 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>)


=====================================================================================================================
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