On 18/09/15 12:31, Fokko Masselink wrote:
Take iccifort-2015.1.133.eb and iccifort-2015.1.133-GCC-4.9.2.eb for example:
iccifort-2015.1.133.eb has these:
dependencies = [
('icc', version),
('ifort', version),
]
and iccifort-2015.1.133-GCC-4.9.2.eb has these:
dependencies = [
('icc', version, versionsuffix),
('ifort', version, versionsuffix),
]
If you look at icc-2015.1.133-GCC-4.9.2.eb
it installs icc and has GCC as dependency.
though you could also change it, so that icc-2015.1.133-GCC-4.9.2.eb doesn't
install the icc, but just has 2 dependencies: icc-2015.1.133.eb and
GCC-4.9.2.eb.
That way you de-duplicate the installation of icc. Right?
Any reason not to do it like that?
Yes, there is a reason.
During the installation of icc, I'm not sure what the Intel installer
doesn't perform magic to figure out which GCC version is used, to then
hardcode that in one way or another in the installation.
In that sense, using icc as a dependency next to a GCC dependency may
yield a different installation of icc as it would be if the EB-provided
GCC is available.
This only matters w.r.t. the easyconfigs themselves: typically, you
would only install one of the icc easyconfigs, not both (with/without GCC).
Just go for the one where a GCC is included underneath icc, and just
skip the one that relies on the system GCC?
regards,
Kenneth