8. Known Issues¶
8.1. General¶
gcc@13
(gcc
,g++
,gfortran
) not yet supportedOur software stack doesn’t build with
gcc@13
yet. This is also true when combining the LLVM or Appleclang
compiler withgfortran@13
.Build errors for
mapl@2.35.2
withmpich@4.1.1
This problem is described in https://github.com/JCSDA/spack-stack/issues/608.
Issues starting/finding
ecflow_server
due to a mismatch of hostnamesOn some systems,
ecflow_server
gets confused by multiple hostnames, e.g.localhost
andMYORG-L-12345
. Theecflow_start.sh
script reports the hostname it wants to use. This name (or both) must be in/etc/hosts
in the correct address line, often the loopback address (127.0.0.1
).Installation of duplicate packages
ecbuild
,hdf5
One reason for this is an external
cmake@3.20
installation, which confuses the concretizer when building a complex environment such as theskylab-dev
or`jedi-ufs-all
environment. For certain packages (and thus their dependencies), a newer version thancmake@3.20
is required, for otherscmake@3.20
works, and spack then thinks that it needs to build two identical versions of the same package with different versions ofcmake
. The solution is to remove any externalcmake@3.20
package (and best also earlier versions) in the site config and run the concretization step again. Another reason on Ubuntu 20 is the presence of externalopenssl
packages, which should be removed before re-running the concretization step.Installation of duplicate package
nco
We tracked this down to multiple versions of
bison
being used. The best solution is to remove externalbison
versions earlier than 3.8 from the site config (packages.yaml
).
8.2. MSU Hercules¶
wgrib2@2.0.8
doesn’t build on Hercules, usewgrib2@3.1.1
instead.
8.3. NASA Discover¶
Timeout when fetching software during spack installs.
Discover’s connection to the outside world can be very slow and spack sometimes aborts with fetch timeouts. Try again until it works, sometimes have to wait for a bit.
8.4. NCAR-Wyoming Casper¶
py-scipy
is missing the Pythran backend, because older versions ofpy-pythran
(up to0.11.x
) cause compilation errors inpy-scipy
for all Intel compilers, and newerpy-pythran
versions (0.12.x
and later) do not build with the old Intel compiler used on Casper.
8.5. NCAR-Wyoming Cheyenne¶
py-scipy
is missing the Pythran backend, because older versions ofpy-pythran
(up to0.11.x
) cause compilation errors inpy-scipy
for all Intel compilers, and newerpy-pythran
versions (0.12.x
and later) do not build with the old Intel compiler used on Cheyenne.
8.6. NOAA Parallel Works¶
With the default module path, spack will detect the system as Cray, therefore one needs to remove it when building or using spack environments
libxml2
won’t untar during thespack install
step, because of an issue with the filesystem. This can be avoided by makinglibxml2
an external packageThe
/contrib
filesystem can be very, very slow
8.7. NOAA RDHPCS Gaea¶
Random “permission denied” errors during the spack install phase
If random errors during the spack install phase occur related to “permission denied” when building packages, edit
envs/env_name/config.yaml
and comment out the linesbuild_stage
andtest_stage
.Random “git-lfs not found” errors during the spack install phase
If random errors during the spack install phase occur related to “git-lfs not found” when building packages (e.g. crtm), simply load the module and try again (
module load git-lfs
).
8.8. UW (Univ. of Wisconsin) S4¶
Compiler errors when using too many threads for parallel builds
Using more than two threads when running
make
(e.g.make -j4
) can lead to compiler errors like the following:
[94%] Linking CXX executable test_ufo_parameters
icpc: error #10106: Fatal error in /home/opt/intel/oneapi/2022.1/compiler/2022.0.1/linux/bin/intel64/../../bin/intel64/mcpcom, terminated by kill signal
...
8.11. macOS¶
Error
invalid argument '-fgnu89-inline' not allowed with 'C++'
This error occurs on macOS Monterey with
mpich-3.4.3
installed via Homebrew when trying to build the jedi bundles that useecbuild
. The reason was that the C compiler flag-fgnu89-inline
from/usr/local/Cellar/mpich/3.4.3/lib/pkgconfig/mpich.pc
was added to the C++ compiler flags by ecbuild. The solution was to setCC=mpicc FC=mpif90 CXX=mpicxx
when callingecbuild
for those bundles. Note that it is recommended to installmpich
oropenmpi
with spack-stack, not with Homebrew.Installation of
poetry
usingpip3
or test withpython3
failsThis can happen when multiple versions of Python were installed with Homebrew and
pip3
/python3
point to different versions. Runbrew doctor
and check if there are issues with Python not being properly linked. Follow the instructions given bybrew
, if applicable.Error
AttributeError: Can't get attribute 'Mark' on <module 'ruamel.yaml.error' from ...
when runningspack install
Some users are seeing this with Python 3.10 installed via Homebrew on macOS. Run
export | grep SPACK_PYTHON
to verify the Python version used, then runbrew list
to check if there are alternative Python versions available. Manually settingSPACK_PYTHON
to a different version, for example viaexport SPACK_PYTHON=/usr/local/bin/python3.9
, solves the problem.Errors handling exceptions on macOS.
A large number of errors related to handling exceptions thrown by applications was found when using default builds or Homebrew installations of
mpich
oropenmpi
, which use flat namespaces. With our spack version,mpich
andopenmpi
are installed with a+two_level_namespace
option that fixes the problem.Errors such as
Symbol not found: __cg_png_create_info_struct
Can happen when trying to use the raster plotting scripts in
fv3-jedi-tools
. In that case, exportingDYLD_LIBRARY_PATH=/usr/lib/:$DYLD_LIBRARY_PATH
can help. Ifgit
commands fail after this, you might need to verify wherewhich git
points to (Homebrew vs module) and unload thegit
module.