Line 5406 _configtest.c:2:10: fatal error: 'mpi.h' file not found On Wed, 31 Oct 2018 at 20:27, Matthew Knepley <knepley@gmail.com> wrote:
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
https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>