geodynamics / pylith_installer

Installer code for PyLith.
MIT License
7 stars 8 forks source link

spatialdata not installing, causing build to fail #80

Closed saehuber closed 1 week ago

saehuber commented 4 weeks ago

I am attempting to install pylith using the installer version 4.3.1-1. The make step fails during the build of pylith with the step

checking for spatialdata/spatialdb/SpatialDB.hh... no
configure: error: SpatialDB header not found; try CPPFLAGS="-I<Spatialdata include dir>"

The only record I can find of SpatialData in the preceeding compilation log is touch /path/to/pylith-installer-4.1.3-1/build/cig/installed_spatialdata

Config.log contains

config.log:existing_spatialdata=''
config.log:spatialdata_repo='https://github.com/geodynamics/spatialdata.git'

I called configure with --enable-spatialdata=yes, --with-spatialdata-repo=https://github.com/geodynamics/spatialdata.git as a first attempt. I am compiling on an Alma Linux 9 HPC cluster with gcc9.3.0, python 3.10.2.

baagaard-usgs commented 4 weeks ago

Please refer to my comment about the configure arguments for using the GitHub repos with v4.1.3-1 of the installer: https://github.com/geodynamics/pylith_installer/issues/79#issuecomment-2392374942

We will try to get a PyLith release out in the next few weeks with these build/installation fixes.

saehuber commented 4 weeks ago

Thanks, I appreciate the quick reply! Now make fails (after the petsc build) with

make[3]: Entering directory '/path/to/pylith-installer-4.1.3-1/build2/cig'
/cvmfs/soft.computecanada.ca/gentoo/2020/usr/bin/git clone --single-branch --recursive https://github.com/geodynamics/pythia.git pythia-main
fatal: destination path 'pythia-main' already exists and is not an empty directory.

any suggestions on what to try next?

baagaard-usgs commented 4 weeks ago

git clone will fail if the directory already exists, so you just need to remove the directories that contain the source code under the cig directory. I also recommend removing all of the installed_PACKAGE files under cig that are used to keep track of what has been built.

saehuber commented 2 weeks ago

Thanks for the follow up and apologies for my own delayed response. I've done this and seem to have hit on some strange repeated download- it looks like the build of pythia is coming up twice, once before and once after the build of petsc-pylith?)

I tried:

Then I call make again. Some highlights:

make[2]: Entering directory '/path/to/build/cig' /cvmfs/soft.computecanada.ca/gentoo/2020/usr/bin/git clone --single-branch --recursive https://github.com/geodynamics/pythia.git pythia-main Cloning into 'pythia-main'... remote: Enumerating objects: 5297, done.

(it builds. then petsc-pylith builds) Completed PETSc check examples make[3]: Leaving directory '/path/to/build/cig/petsc-pylith' make[2]: Leaving directory '/path/to/build/cig' make pylith make[2]: Entering directory '/path/to/build/cig' make pythia make[3]: Entering directory '/path/to/build/cig' /cvmfs/soft.computecanada.ca/gentoo/2020/usr/bin/git clone --single-branch --recursive https://github.com/geodynamics/pythia.git pythia-main fatal: destination path 'pythia-main' already exists and is not an empty directory. make[3]: *** [Makefile:717: pythia] Error 128

Any ideas why it would be doing this?

baagaard-usgs commented 2 weeks ago

I found a typo in the Makefile where the installed_pythia file was not created after installing pythia if testing was turned off. I updated the v4.1.3-1 tarball.

saehuber commented 1 week ago

Apologies for not following up earlier, and thanks for the correction. The build was successful following the instructions/changes you've noted above. Thank you!