-
Notifications
You must be signed in to change notification settings - Fork 24
Description
Hi guys.
I've been down a bit of a rabbit hole with the CVODE installation over the past couple of days, and I think there is something awry with the way in which CVODE is being installed via install_cvode.sh.
The CI action for installing CVODE on both Ubuntu and MacOS is getting past looking for LAPACK libraries:
-- Looking for LAPACK libraries... OK
(https://github.com/AtChem/AtChem2/runs/3231872288#step:5:321)
but the LAPACK functionality test is failing:
WARNING: LAPACK not functional.
-- Checking if Lapack works... FAILED
Blas/Lapack support will not be provided.
(https://github.com/AtChem/AtChem2/runs/3231872288#step:5:328)
I think it's failing firstly because of the : character in the LAPACK_LIBS variable:
AtChem2/tools/install/install_cvode.sh
Lines 24 to 28 in dd25104
| if [ "$OS" = 'Darwin' ]; then | |
| LAPACK_LIBS=/usr/lib/liblapack.dylib:/usr/lib/libblas.dylib | |
| else | |
| LAPACK_LIBS=/usr/lib/liblapack.so:/usr/lib/libblas.so | |
| fi |
which you can confirm by going into the sundials-2.7.0/build/LapackTest directory and running make, e.g:
...
CMakeFiles/ltest.dir/build.make:98: *** target pattern contains no `%'. Stop.
make[2]: Leaving directory `/mnt/lustre/users/klcm500/AtChem2/BUILD_ISSUES/dependencies_lapack/sundials-2.7.0/build/LapackTest'
make[1]: *** [CMakeFiles/ltest.dir/all] Error 2
make[1]: Leaving directory `/mnt/lustre/users/klcm500/AtChem2/BUILD_ISSUES/dependencies_lapack/sundials-2.7.0/build/LapackTest'
make: *** [all] Error 2
What happens next, I think, depends entirely on which LAPACK / BLAS libraries are installed on your system. When I can get the LAPACK test to pass for CVODE by point it directly at an existing libopenblas.so, I end up with undefined references to some BLAS symbols in the CVODE libraries which propagate through to the build of AtChem2.
Long story short:
- I don't think LAPACK support is working as described by the manual and as attempted to enable in CI
- The model seems to run just fine without it, so, do we want to just disable LAPACK support in the CVODE installation with
-DENABLE_LAPACK:BOOL=OFF?
From what I can tell on our system, it works just fine without LAPACK support!