Thanks folks! I made it farther:

:/PETSc3/fem$ ~/MacSoftware/bin/python3 ./firedrake-install --honour-petsc-dir --verbose --no-package-manager

Running ./firedrake-install --honour-petsc-dir --verbose --no-package-manager

Xcode and homebrew installation disabled. Proceeding on the rash assumption that packaged dependencies are in place.

Creating firedrake venv in '/PETSc3/fem/firedrake'.

Cloning firedrake


Successfully cloned repository firedrake

Checking out branch master

Successfully checked out branch master

Cloning the dependencies of firedrake

Cloning ufl


Successfully cloned repository ufl

Checking out branch master

Successfully checked out branch master

Cloning fiat


Successfully cloned repository fiat

Checking out branch master

Successfully checked out branch master

Cloning FInAT


Successfully cloned repository FInAT

Checking out branch master

Successfully checked out branch master

Cloning tsfc


Successfully cloned repository tsfc

Checking out branch master

Successfully checked out branch master

Cloning PyOP2


Successfully cloned repository PyOP2

Checking out branch master

Successfully checked out branch master

Cloning the dependencies of PyOP2

Using existing petsc installation


Cloning petsc4py


Successfully cloned repository petsc4py

Checking out branch firedrake

Successfully checked out branch firedrake

Cloning COFFEE


Successfully cloned repository COFFEE

Checking out branch master

Successfully checked out branch master

Installing pip dependencies for petsc4py

No dependencies found. Skipping.

Installing pip dependencies for COFFEE

Installing pip dependencies for ufl

No dependencies found. Skipping.

Installing pip dependencies for fiat

No dependencies found. Skipping.

Installing pip dependencies for FInAT

Installing pip dependencies for tsfc

Installing pip dependencies for PyOP2

Traceback (most recent call last):

  File "./firedrake-install", line 1124, in <module>

    pip_requirements(p)

  File "./firedrake-install", line 607, in pip_requirements

    run_pip_install(["-r", "%s/requirements-ext.txt" % package])

  File "./firedrake-install", line 597, in run_pip_install

    check_call(pipinstall + pipargs)

  File "./firedrake-install", line 435, in check_call

    log.debug(subprocess.check_output(arguments, stderr=subprocess.STDOUT, env=env).decode())

  File "/Users/knepley/MacSoftware/lib/python3.6/subprocess.py", line 336, in check_output

    **kwargs).stdout

  File "/Users/knepley/MacSoftware/lib/python3.6/subprocess.py", line 418, in run

    output=stdout, stderr=stderr)

subprocess.CalledProcessError: Command '['/PETSc3/fem/firedrake/bin/python', '-m', 'pip', 'install', '--no-binary', 'mpi4py', '-vvv', '-r', 'PyOP2/requirements-ext.txt']' returned non-zero exit status 1.



Install log saved in firedrake-install.log

 1:/PETSc3/fem$ vi firedrake-install.log 


It looks like mpi4py is failing, but I do not know where to look for the actual error message. Log attached.

  Thanks,

     Matt

On Tue, Oct 30, 2018 at 12:51 PM Lawrence Mitchell <wence@gmx.li> wrote:


> On 30 Oct 2018, at 16:30, Matthew Knepley <knepley@gmail.com> wrote:
>
> On Fri, Oct 26, 2018 at 11:26 AM Matthew Knepley <knepley@gmail.com> wrote:
> Dear Firedrake,
>
> Long-time listener, first time mailer.
>
> I would like to build using my own repository for PETSc. I am reading this page:
>
>   https://www.firedrakeproject.org/download.html
>
> but it is not clear to me how to tell the installer to use mine, rather than install its own.
> Do I just point to it using PETSC_DIR?
>
> Its not going to install itself by osmosis.

Aha, you're not subscribed and people don't automatically CC. You would normally get a bounce notification asking you to subscribe, but I think someone in the past (probably me) added you to a list of addresses that get accepted anyway.

Answers from David:

> Nearly: there’s a small piece of idiot-proofing to prevent the unwary new user from accidentally using the wrong PETSc. You need to pass –honour-petsc-dir (note UK spelling) to firedrake-install

> You also need to check the install script to make sure your petsc has our minimal set of options. I apologise that you have to RTFS for that. From memory, the absolute minimum is that you need –download-hdf5 and –download-eigen

Nicolas said:

>
> You need to define PETSC_DIR and PETSC_ARCH, then run the install script with the --honour-petsc-dir option.
>
> If you call the script with --help, you may also discover a couple of options you might want to use (or not) such as --disable-ssh or --no-package-manager

And Miklos pointed out:

> You don’t actually need to read the script,
>
> firedrake-install --show-petsc-configure-options
>
> tells you which options the Firedrake install script passes to  PETSc’s configure script. It is normally safe add things, but removing things may result in harmless test failures (e.g. some solver packages), or in broken Firedrake functionality.

This last option doesn't exit the installer after showing them, so it's not quite as useful as it seems.

FWIW, we by default build with:

--download-chaco --download-metis --download-parmetis --download-scalapack --download-hypre --download-mumps --with-zlib --download-netcdf --download-hdf5 --download-pnetcdf --download-exodusii --with-debugging=0 --with-shared-libraries=1

Cheers,

Lawrence



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