-
Notifications
You must be signed in to change notification settings - Fork 10
Description
The issue
JOSS requires
Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
This issue is a necessity.
I've now tested your software on three different systems to verify the outlined installation procedure and GPU features:
- Ubuntu 24.04, Intel Core i9900K with RTX 2080, GCC 13
- Ubuntu 20.04, Intel Core i7-10700, GCC 10
- macOS 15.1.1, M1 Pro, Apple Clang 16
On the second system, I got the following compile error
EXP/expui/FieldBasis.cc: In member function ‘virtual std::vector<double> BasisClasses::FieldBasis::sph_eval(double, double, double)’:
EXP/expui/FieldBasis.cc:472:23: error: no matching function for call to ‘begin(Eigen::Matrix<std::complex<double>, -1, 1>&)’
472 | for (auto v : store[0]) fout << v << std::endl;It is related to the utilized eigen version. If I compile with eigen 3.4 everything works flawlessly (e.g. installed via conda or apt). However, Ubuntu 20.04 provides by default version 3.3.7 via apt.
Looking at the documentation, the concrete required version (or equivalent version to be known to work) aren't specified anywhere. This is necessarily to be changed for eigen, but also the other dependencies which need to be set up by the user and are not automatically set up via the Build System.
Two options:
- Either state the versions in the documentation/
INSTALL.md - Or, make the build system more automatic as suggested in [JOSS REVIEW] Improve Install Instructions/ Process #94
This issue is part of the JOSS review: openjournals/joss-reviews#7302