Repository: spack/spack

Issue:
read-cray-manifest fails with "Spec is not concrete"
### Steps to reproduce

```
./bin/spack --debug --backtrace external read-cray-manifest --fail-on-error --directory /opt/cray/pe/cpe-descriptive-manifest/
```

### Error message

```
~/spack> ./bin/spack --debug --backtrace external read-cray-manifest --fail-on-error --directory /opt/cray/pe/cpe-descriptive-manifest/
==> [2023-05-24-21:52:26.595900] Imported external from built-in commands
==> [2023-05-24-21:52:26.598029] Imported external from built-in commands
==> [2023-05-24-21:52:26.598913] Cray manifest path /opt/cray/pe/cpe-descriptive-manifest/ exists: collecting all files to read.
==> [2023-05-24-21:52:26.599651] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json
==> [2023-05-24-21:52:26.599736] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.10.json
==> [2023-05-24-21:52:26.599794] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-aocc-22.10.json
==> [2023-05-24-21:52:26.599846] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.10.json
==> [2023-05-24-21:52:26.599895] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.06.json
==> [2023-05-24-21:52:26.599943] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-aocc-22.06.json
==> [2023-05-24-21:52:26.600025] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json
==> [2023-05-24-21:52:26.600083] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.10.json
==> [2023-05-24-21:52:26.600130] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-aocc-22.10.json
==> [2023-05-24-21:52:26.600176] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.10.json
==> [2023-05-24-21:52:26.600220] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.06.json
==> [2023-05-24-21:52:26.600273] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-aocc-22.06.json
==> [2023-05-24-21:52:26.600315] Reading manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json
==> [2023-05-24-21:52:26.620585] Reading config from file /home/user/spack/etc/spack/defaults/repos.yaml
==> [2023-05-24-21:52:26.740188] Reading config from file /home/user/spack/etc/spack/defaults/packages.yaml
==> [2023-05-24-21:52:26.825382] Reading config from file /home/user/.spack/packages.yaml
==> [2023-05-24-21:52:26.923790] Omitting package libibverbs: no corresponding repo package
==> [2023-05-24-21:52:26.932996] Omitting variant shared for entry libfabric/2t5sdlp
==> [2023-05-24-21:52:26.933088] Omitting variant static for entry libfabric/2t5sdlp
==> [2023-05-24-21:52:26.937113] Omitting package cray-pals: no corresponding repo package
==> [2023-05-24-21:52:26.938344] Omitting variant shared for entry cray-pmi/g5is2im
==> [2023-05-24-21:52:26.938429] Omitting variant static for entry cray-pmi/g5is2im
==> [2023-05-24-21:52:26.965590] Omitting variant cxx for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965682] Omitting variant fortran for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965741] Omitting variant shared for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965791] Omitting variant static for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965837] Omitting variant default64 for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965880] Omitting variant netmod for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.968897] Omitting variant cxx for entry cray-libsci/gxb2huw
==> [2023-05-24-21:52:26.968985] Omitting variant fortran for entry cray-libsci/gxb2huw
==> [2023-05-24-21:52:26.969047] Omitting variant static for entry cray-libsci/gxb2huw
==> [2023-05-24-21:52:26.969720] Omitting variant cxx for entry cray-libsci/577vee5
==> [2023-05-24-21:52:26.969792] Omitting variant fortran for entry cray-libsci/577vee5
==> [2023-05-24-21:52:26.969850] Omitting variant static for entry cray-libsci/577vee5
==> [2023-05-24-21:52:26.970508] Omitting variant cxx for entry cray-libsci/vmitrc3
==> [2023-05-24-21:52:26.970578] Omitting variant fortran for entry cray-libsci/vmitrc3
==> [2023-05-24-21:52:26.970634] Omitting variant static for entry cray-libsci/vmitrc3
==> [2023-05-24-21:52:26.971265] Omitting variant cxx for entry cray-libsci/wcltca2
==> [2023-05-24-21:52:26.971333] Omitting variant fortran for entry cray-libsci/wcltca2
==> [2023-05-24-21:52:26.971388] Omitting variant static for entry cray-libsci/wcltca2
==> [2023-05-24-21:52:26.972005] Omitting variant cxx for entry cray-libsci/xbnn27g
==> [2023-05-24-21:52:26.972072] Omitting variant fortran for entry cray-libsci/xbnn27g
==> [2023-05-24-21:52:26.972127] Omitting variant static for entry cray-libsci/xbnn27g
==> [2023-05-24-21:52:26.972779] Omitting variant cxx for entry cray-libsci/2pouyij
==> [2023-05-24-21:52:26.972846] Omitting variant fortran for entry cray-libsci/2pouyij
==> [2023-05-24-21:52:26.972900] Omitting variant static for entry cray-libsci/2pouyij
==> [2023-05-24-21:52:26.973502] Omitting variant cxx for entry cray-libsci/raare2f
==> [2023-05-24-21:52:26.973568] Omitting variant fortran for entry cray-libsci/raare2f
==> [2023-05-24-21:52:26.973622] Omitting variant static for entry cray-libsci/raare2f
==> [2023-05-24-21:52:26.974231] Omitting variant cxx for entry cray-libsci/7ygsy65
==> [2023-05-24-21:52:26.974300] Omitting variant fortran for entry cray-libsci/7ygsy65
==> [2023-05-24-21:52:26.974354] Omitting variant static for entry cray-libsci/7ygsy65
==> [2023-05-24-21:52:26.974900] Omitting variant cxx for entry cray-libsci/hfbvyoo
==> [2023-05-24-21:52:26.974960] Omitting variant fortran for entry cray-libsci/hfbvyoo
==> [2023-05-24-21:52:26.975010] Omitting variant static for entry cray-libsci/hfbvyoo
==> [2023-05-24-21:52:26.975562] Omitting variant cxx for entry cray-libsci/kb7k6yy
==> [2023-05-24-21:52:26.975622] Omitting variant fortran for entry cray-libsci/kb7k6yy
==> [2023-05-24-21:52:26.975672] Omitting variant static for entry cray-libsci/kb7k6yy
==> [2023-05-24-21:52:26.976228] Omitting variant cxx for entry cray-libsci/wjof4x3
==> [2023-05-24-21:52:26.976287] Omitting variant fortran for entry cray-libsci/wjof4x3
==> [2023-05-24-21:52:26.976337] Omitting variant static for entry cray-libsci/wjof4x3
==> [2023-05-24-21:52:26.976888] Omitting variant cxx for entry cray-libsci/emuzqpj
==> [2023-05-24-21:52:26.976949] Omitting variant fortran for entry cray-libsci/emuzqpj
==> [2023-05-24-21:52:26.976999] Omitting variant static for entry cray-libsci/emuzqpj
==> [2023-05-24-21:52:26.977628] Omitting variant cxx for entry cray-libsci/255rifz
==> [2023-05-24-21:52:26.977689] Omitting variant fortran for entry cray-libsci/255rifz
==> [2023-05-24-21:52:26.977739] Omitting variant static for entry cray-libsci/255rifz
==> [2023-05-24-21:52:26.990205] Omitting variant debug for entry hdf5/s4r3o7d
==> [2023-05-24-21:52:26.991108] Omitting variant debug for entry hdf5/3ch4fsl
==> [2023-05-24-21:52:27.077571] Omitting variant doxygen for entry netcdf-c/eszacrz
==> [2023-05-24-21:52:27.077667] Omitting variant doc for entry netcdf-c/eszacrz
==> [2023-05-24-21:52:27.081443] Omitting variant static for entry netcdf-cxx4/2btj2dv
==> [2023-05-24-21:52:27.087464] Omitting variant static for entry netcdf-c/rwx4v5n
==> [2023-05-24-21:52:27.087567] Omitting variant doxygen for entry netcdf-c/rwx4v5n
==> [2023-05-24-21:52:27.087627] Omitting variant doc for entry netcdf-c/rwx4v5n
==> [2023-05-24-21:52:27.088560] Omitting variant static for entry netcdf-cxx4/jd4dv32
==> [2023-05-24-21:52:27.096077] Omitting package cray-dsmml: no corresponding repo package
==> [2023-05-24-21:52:27.096624] Omitting package cray-openshmemx: no corresponding repo package
==> [2023-05-24-21:52:27.096816] Omitting variant cxx for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.096881] Omitting variant fortran for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.096931] Omitting variant shared for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.096976] Omitting variant static for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.097019] Omitting variant default64 for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.097070] Omitting variant netmod for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.098592] /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json: 31 specs read from manifest
==> [2023-05-24-21:52:27.101125] /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json: 2 compilers read from manifest
==> [2023-05-24-21:52:27.101400] Reading config from file /home/user/.spack/linux/compilers.yaml
==> [2023-05-24-21:52:27.203305] Reading config from file /home/user/spack/etc/spack/defaults/config.yaml
==> [2023-05-24-21:52:27.259369] DATABASE LOCK TIMEOUT: 60s
==> [2023-05-24-21:52:27.259460] PACKAGE LOCK TIMEOUT: No timeout
==> [2023-05-24-21:52:28.268039] Reading manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.10.json
==> [2023-05-24-21:52:28.294467] Omitting variant shared for entry libfabric/ycb27di
==> [2023-05-24-21:52:28.294541] Omitting variant static for entry libfabric/ycb27di
==> [2023-05-24-21:52:28.296015] Omitting package cray-pals: no corresponding repo package
==> [2023-05-24-21:52:28.296422] Omitting variant shared for entry cray-pmi/47h6frx
==> [2023-05-24-21:52:28.296481] Omitting variant static for entry cray-pmi/47h6frx
==> [2023-05-24-21:52:28.297189] Omitting variant cxx for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297250] Omitting variant fortran for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297292] Omitting variant shared for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297329] Omitting variant static for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297365] Omitting variant default64 for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297400] Omitting variant netmod for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.298208] Omitting variant cxx for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298271] Omitting variant fortran for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298314] Omitting variant shared for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298353] Omitting variant static for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298388] Omitting variant default64 for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298423] Omitting variant netmod for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.299122] Omitting variant cxx for entry cray-libsci/4yvemws
==> [2023-05-24-21:52:28.299181] Omitting variant fortran for entry cray-libsci/4yvemws
==> [2023-05-24-21:52:28.299227] Omitting variant static for entry cray-libsci/4yvemws
==> [2023-05-24-21:52:28.299992] Omitting variant cxx for entry cray-libsci/dwyvjc7
==> [2023-05-24-21:52:28.300050] Omitting variant fortran for entry cray-libsci/dwyvjc7
==> [2023-05-24-21:52:28.300096] Omitting variant static for entry cray-libsci/dwyvjc7
==> [2023-05-24-21:52:28.300844] Omitting variant cxx for entry cray-libsci/ufxclhe
==> [2023-05-24-21:52:28.300902] Omitting variant fortran for entry cray-libsci/ufxclhe
==> [2023-05-24-21:52:28.300948] Omitting variant static for entry cray-libsci/ufxclhe
==> [2023-05-24-21:52:28.301676] Omitting variant cxx for entry cray-libsci/a65u2hk
==> [2023-05-24-21:52:28.301735] Omitting variant fortran for entry cray-libsci/a65u2hk
==> [2023-05-24-21:52:28.301781] Omitting variant static for entry cray-libsci/a65u2hk
==> [2023-05-24-21:52:28.302564] Omitting variant cxx for entry cray-libsci/l6gulml
==> [2023-05-24-21:52:28.302623] Omitting variant fortran for entry cray-libsci/l6gulml
==> [2023-05-24-21:52:28.302669] Omitting variant static for entry cray-libsci/l6gulml
==> [2023-05-24-21:52:28.303453] Omitting variant cxx for entry cray-libsci/2fjnz5k
==> [2023-05-24-21:52:28.303516] Omitting variant fortran for entry cray-libsci/2fjnz5k
==> [2023-05-24-21:52:28.303565] Omitting variant static for entry cray-libsci/2fjnz5k
==> [2023-05-24-21:52:28.304374] Omitting variant cxx for entry cray-libsci/ri3ezpw
==> [2023-05-24-21:52:28.304436] Omitting variant fortran for entry cray-libsci/ri3ezpw
==> [2023-05-24-21:52:28.304484] Omitting variant static for entry cray-libsci/ri3ezpw
==> [2023-05-24-21:52:28.305276] Omitting variant cxx for entry cray-libsci/x63uexo
==> [2023-05-24-21:52:28.305336] Omitting variant fortran for entry cray-libsci/x63uexo
==> [2023-05-24-21:52:28.305386] Omitting variant static for entry cray-libsci/x63uexo
==> [2023-05-24-21:52:28.306170] Omitting variant cxx for entry cray-libsci/3z52nk7
==> [2023-05-24-21:52:28.306251] Omitting variant fortran for entry cray-libsci/3z52nk7
==> [2023-05-24-21:52:28.306302] Omitting variant static for entry cray-libsci/3z52nk7
==> [2023-05-24-21:52:28.307102] Omitting variant cxx for entry cray-libsci/5qrntyj
==> [2023-05-24-21:52:28.307164] Omitting variant fortran for entry cray-libsci/5qrntyj
==> [2023-05-24-21:52:28.307213] Omitting variant static for entry cray-libsci/5qrntyj
==> [2023-05-24-21:52:28.308013] Omitting variant cxx for entry cray-libsci/du32g3c
==> [2023-05-24-21:52:28.308073] Omitting variant fortran for entry cray-libsci/du32g3c
==> [2023-05-24-21:52:28.308122] Omitting variant static for entry cray-libsci/du32g3c
==> [2023-05-24-21:52:28.308919] Omitting variant cxx for entry cray-libsci/szuvkxm
==> [2023-05-24-21:52:28.308980] Omitting variant fortran for entry cray-libsci/szuvkxm
==> [2023-05-24-21:52:28.309029] Omitting variant static for entry cray-libsci/szuvkxm
==> [2023-05-24-21:52:28.309818] Omitting variant cxx for entry cray-libsci/zfr2jmg
==> [2023-05-24-21:52:28.309880] Omitting variant fortran for entry cray-libsci/zfr2jmg
==> [2023-05-24-21:52:28.309928] Omitting variant static for entry cray-libsci/zfr2jmg
==> [2023-05-24-21:52:28.310748] Omitting variant cxx for entry cray-libsci/pkg5pv2
==> [2023-05-24-21:52:28.310811] Omitting variant fortran for entry cray-libsci/pkg5pv2
==> [2023-05-24-21:52:28.310861] Omitting variant static for entry cray-libsci/pkg5pv2
==> [2023-05-24-21:52:28.311657] Omitting variant cxx for entry cray-libsci/h5e4cfa
==> [2023-05-24-21:52:28.311720] Omitting variant fortran for entry cray-libsci/h5e4cfa
==> [2023-05-24-21:52:28.311769] Omitting variant static for entry cray-libsci/h5e4cfa
==> [2023-05-24-21:52:28.312566] Omitting variant cxx for entry cray-libsci/zm3p3je
==> [2023-05-24-21:52:28.312628] Omitting variant fortran for entry cray-libsci/zm3p3je
==> [2023-05-24-21:52:28.312678] Omitting variant static for entry cray-libsci/zm3p3je
==> [2023-05-24-21:52:28.313476] Omitting variant cxx for entry cray-libsci/cxk2wux
==> [2023-05-24-21:52:28.313538] Omitting variant fortran for entry cray-libsci/cxk2wux
==> [2023-05-24-21:52:28.313587] Omitting variant static for entry cray-libsci/cxk2wux
==> [2023-05-24-21:52:28.314408] Omitting variant cxx for entry cray-libsci/ett7czm
==> [2023-05-24-21:52:28.314472] Omitting variant fortran for entry cray-libsci/ett7czm
==> [2023-05-24-21:52:28.314521] Omitting variant static for entry cray-libsci/ett7czm
==> [2023-05-24-21:52:28.315319] Omitting variant cxx for entry cray-libsci/w3tmwrd
==> [2023-05-24-21:52:28.315380] Omitting variant fortran for entry cray-libsci/w3tmwrd
==> [2023-05-24-21:52:28.315428] Omitting variant static for entry cray-libsci/w3tmwrd
==> [2023-05-24-21:52:28.316223] Omitting variant cxx for entry cray-libsci/eqt4ql5
==> [2023-05-24-21:52:28.316285] Omitting variant fortran for entry cray-libsci/eqt4ql5
==> [2023-05-24-21:52:28.316334] Omitting variant static for entry cray-libsci/eqt4ql5
==> [2023-05-24-21:52:28.317121] Omitting variant cxx for entry cray-libsci/7zqjciq
==> [2023-05-24-21:52:28.317183] Omitting variant fortran for entry cray-libsci/7zqjciq
==> [2023-05-24-21:52:28.317233] Omitting variant static for entry cray-libsci/7zqjciq
==> [2023-05-24-21:52:28.318092] Omitting variant cxx for entry cray-libsci/h7fvhly
==> [2023-05-24-21:52:28.318153] Omitting variant fortran for entry cray-libsci/h7fvhly
==> [2023-05-24-21:52:28.318214] Omitting variant static for entry cray-libsci/h7fvhly
==> [2023-05-24-21:52:28.319013] Omitting variant cxx for entry cray-libsci/uihbn3o
==> [2023-05-24-21:52:28.319075] Omitting variant fortran for entry cray-libsci/uihbn3o
==> [2023-05-24-21:52:28.319125] Omitting variant static for entry cray-libsci/uihbn3o
==> [2023-05-24-21:52:28.319921] Omitting variant cxx for entry cray-libsci/lqhorgs
==> [2023-05-24-21:52:28.319983] Omitting variant fortran for entry cray-libsci/lqhorgs
==> [2023-05-24-21:52:28.320031] Omitting variant static for entry cray-libsci/lqhorgs
==> [2023-05-24-21:52:28.320825] Omitting variant cxx for entry cray-libsci/7ygux5q
==> [2023-05-24-21:52:28.320886] Omitting variant fortran for entry cray-libsci/7ygux5q
==> [2023-05-24-21:52:28.320937] Omitting variant static for entry cray-libsci/7ygux5q
==> [2023-05-24-21:52:28.321719] Omitting variant cxx for entry cray-libsci/cdoqfnq
==> [2023-05-24-21:52:28.321779] Omitting variant fortran for entry cray-libsci/cdoqfnq
==> [2023-05-24-21:52:28.321828] Omitting variant static for entry cray-libsci/cdoqfnq
==> [2023-05-24-21:52:28.331545] Omitting variant shared for entry fftw/zda5wuo
==> [2023-05-24-21:52:28.331618] Omitting variant static for entry fftw/zda5wuo
==> [2023-05-24-21:52:28.332525] Omitting variant shared for entry fftw/2pqicpm
==> [2023-05-24-21:52:28.332588] Omitting variant static for entry fftw/2pqicpm
==> [2023-05-24-21:52:28.333451] Omitting variant shared for entry fftw/x6puufz
==> [2023-05-24-21:52:28.333511] Omitting variant static for entry fftw/x6puufz
==> [2023-05-24-21:52:28.334394] Omitting variant shared for entry fftw/z4m7rcy
==> [2023-05-24-21:52:28.334460] Omitting variant static for entry fftw/z4m7rcy
==> [2023-05-24-21:52:28.335421] Omitting variant shared for entry fftw/bjry2tr
==> [2023-05-24-21:52:28.335486] Omitting variant static for entry fftw/bjry2tr
==> [2023-05-24-21:52:28.336451] Omitting variant debug for entry hdf5/7y3xxbq
==> [2023-05-24-21:52:28.337476] Omitting variant debug for entry hdf5/b6hxpfg
==> [2023-05-24-21:52:28.338845] Omitting variant debug for entry hdf5/vqwuhsg
==> [2023-05-24-21:52:28.339870] Omitting variant debug for entry hdf5/phuayap
==> [2023-05-24-21:52:28.340894] Omitting variant doxygen for entry netcdf-c/6uwy4oi
==> [2023-05-24-21:52:28.340960] Omitting variant doc for entry netcdf-c/6uwy4oi
==> [2023-05-24-21:52:28.341944] Omitting variant static for entry netcdf-cxx4/hx6e77n
==> [2023-05-24-21:52:28.343647] Omitting variant static for entry netcdf-c/hycdmi7
==> [2023-05-24-21:52:28.343729] Omitting variant doxygen for entry netcdf-c/hycdmi7
==> [2023-05-24-21:52:28.343780] Omitting variant doc for entry netcdf-c/hycdmi7
==> [2023-05-24-21:52:28.344752] Omitting variant static for entry netcdf-cxx4/a6rodmn
==> [2023-05-24-21:52:28.346412] Omitting variant doxygen for entry netcdf-c/kwlkkwx
==> [2023-05-24-21:52:28.346478] Omitting variant doc for entry netcdf-c/kwlkkwx
==> [2023-05-24-21:52:28.347446] Omitting variant static for entry netcdf-cxx4/lmppo5f
==> [2023-05-24-21:52:28.349082] Omitting variant static for entry netcdf-c/4e5tkhz
==> [2023-05-24-21:52:28.349161] Omitting variant doxygen for entry netcdf-c/4e5tkhz
==> [2023-05-24-21:52:28.349210] Omitting variant doc for entry netcdf-c/4e5tkhz
==> [2023-05-24-21:52:28.350171] Omitting variant static for entry netcdf-cxx4/fsooywo
==> [2023-05-24-21:52:28.353431] Omitting package cray-dsmml: no corresponding repo package
==> [2023-05-24-21:52:28.353913] Omitting package cray-openshmemx: no corresponding repo package
==> [2023-05-24-21:52:28.355818] /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.10.json: 57 specs read from manifest
==> [2023-05-24-21:52:28.358211] SpecError: Spec is not concrete: cce@14.0.4
==> [2023-05-24-21:52:28.358299] Error: Spec is not concrete: cce@14.0.4
Traceback (most recent call last):
  File "/home/user/spack/lib/spack/spack/main.py", line 1018, in main
    return _main(argv)
  File "/home/user/spack/lib/spack/spack/main.py", line 973, in _main
    return finish_parse_and_run(parser, cmd_name, env_format_error)
  File "/home/user/spack/lib/spack/spack/main.py", line 1001, in finish_parse_and_run
    return _invoke_command(command, parser, args, unknown)
  File "/home/user/spack/lib/spack/spack/main.py", line 650, in _invoke_command
    return_val = command(parser, args)
  File "/home/user/spack/lib/spack/spack/cmd/external.py", line 249, in external
    action[args.external_command](args)
  File "/home/user/spack/lib/spack/spack/cmd/external.py", line 179, in external_read_cray_manifest
    fail_on_error=args.fail_on_error,
  File "/home/user/spack/lib/spack/spack/cmd/external.py", line 225, in _collect_and_consume_cray_manifest_files
    cray_manifest.read(path, not dry_run)
  File "/home/user/spack/lib/spack/spack/cray_manifest.py", line 185, in read
    compilers.extend(compiler_from_entry(x) for x in json_data["compilers"])
  File "/home/user/spack/lib/spack/spack/cray_manifest.py", line 185, in <genexpr>
    compilers.extend(compiler_from_entry(x) for x in json_data["compilers"])
  File "/home/user/spack/lib/spack/spack/cray_manifest.py", line 59, in compiler_from_entry
    return compiler_cls(spec, operating_system, target, paths)
  File "/home/user/spack/lib/spack/spack/compilers/cce.py", line 19, in __init__
    if not self.is_clang_based:
  File "/home/user/spack/lib/spack/spack/compilers/cce.py", line 60, in is_clang_based
    version = self._real_version or self.version
  File "/home/user/spack/lib/spack/spack/compiler.py", line 358, in version
    return self.spec.version
  File "/home/user/spack/lib/spack/spack/spec.py", line 658, in version
    raise spack.error.SpecError("Spec is not concrete: " + str(self))
spack.error.SpecError: Spec is not concrete: cce@14.0.4
```

### Information on your system

* **Spack:** 0.21.0.dev0 (785c31b730586045f5d9ea13fc61ed72b8da7d8e)
* **Python:** 3.6.15
* **Platform:** linux-sles15-zen3
* **Concretizer:** clingo

### General information

- [X] I have run `spack debug report` and reported the version of Spack/Python/Platform
- [X] I have searched the issues of this repo and believe this is not a duplicate
- [X] I have run the failing commands in debug mode and reported the output
read-cray-manifest fails with "Spec is not concrete"
### Steps to reproduce

```
./bin/spack --debug --backtrace external read-cray-manifest --fail-on-error --directory /opt/cray/pe/cpe-descriptive-manifest/
```

### Error message

```
~/spack> ./bin/spack --debug --backtrace external read-cray-manifest --fail-on-error --directory /opt/cray/pe/cpe-descriptive-manifest/
==> [2023-05-24-21:52:26.595900] Imported external from built-in commands
==> [2023-05-24-21:52:26.598029] Imported external from built-in commands
==> [2023-05-24-21:52:26.598913] Cray manifest path /opt/cray/pe/cpe-descriptive-manifest/ exists: collecting all files to read.
==> [2023-05-24-21:52:26.599651] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json
==> [2023-05-24-21:52:26.599736] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.10.json
==> [2023-05-24-21:52:26.599794] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-aocc-22.10.json
==> [2023-05-24-21:52:26.599846] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.10.json
==> [2023-05-24-21:52:26.599895] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.06.json
==> [2023-05-24-21:52:26.599943] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-aocc-22.06.json
==> [2023-05-24-21:52:26.600025] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json
==> [2023-05-24-21:52:26.600083] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.10.json
==> [2023-05-24-21:52:26.600130] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-aocc-22.10.json
==> [2023-05-24-21:52:26.600176] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.10.json
==> [2023-05-24-21:52:26.600220] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.06.json
==> [2023-05-24-21:52:26.600273] Adding manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-aocc-22.06.json
==> [2023-05-24-21:52:26.600315] Reading manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json
==> [2023-05-24-21:52:26.620585] Reading config from file /home/user/spack/etc/spack/defaults/repos.yaml
==> [2023-05-24-21:52:26.740188] Reading config from file /home/user/spack/etc/spack/defaults/packages.yaml
==> [2023-05-24-21:52:26.825382] Reading config from file /home/user/.spack/packages.yaml
==> [2023-05-24-21:52:26.923790] Omitting package libibverbs: no corresponding repo package
==> [2023-05-24-21:52:26.932996] Omitting variant shared for entry libfabric/2t5sdlp
==> [2023-05-24-21:52:26.933088] Omitting variant static for entry libfabric/2t5sdlp
==> [2023-05-24-21:52:26.937113] Omitting package cray-pals: no corresponding repo package
==> [2023-05-24-21:52:26.938344] Omitting variant shared for entry cray-pmi/g5is2im
==> [2023-05-24-21:52:26.938429] Omitting variant static for entry cray-pmi/g5is2im
==> [2023-05-24-21:52:26.965590] Omitting variant cxx for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965682] Omitting variant fortran for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965741] Omitting variant shared for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965791] Omitting variant static for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965837] Omitting variant default64 for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.965880] Omitting variant netmod for entry cray-mpich/4ilhfzr
==> [2023-05-24-21:52:26.968897] Omitting variant cxx for entry cray-libsci/gxb2huw
==> [2023-05-24-21:52:26.968985] Omitting variant fortran for entry cray-libsci/gxb2huw
==> [2023-05-24-21:52:26.969047] Omitting variant static for entry cray-libsci/gxb2huw
==> [2023-05-24-21:52:26.969720] Omitting variant cxx for entry cray-libsci/577vee5
==> [2023-05-24-21:52:26.969792] Omitting variant fortran for entry cray-libsci/577vee5
==> [2023-05-24-21:52:26.969850] Omitting variant static for entry cray-libsci/577vee5
==> [2023-05-24-21:52:26.970508] Omitting variant cxx for entry cray-libsci/vmitrc3
==> [2023-05-24-21:52:26.970578] Omitting variant fortran for entry cray-libsci/vmitrc3
==> [2023-05-24-21:52:26.970634] Omitting variant static for entry cray-libsci/vmitrc3
==> [2023-05-24-21:52:26.971265] Omitting variant cxx for entry cray-libsci/wcltca2
==> [2023-05-24-21:52:26.971333] Omitting variant fortran for entry cray-libsci/wcltca2
==> [2023-05-24-21:52:26.971388] Omitting variant static for entry cray-libsci/wcltca2
==> [2023-05-24-21:52:26.972005] Omitting variant cxx for entry cray-libsci/xbnn27g
==> [2023-05-24-21:52:26.972072] Omitting variant fortran for entry cray-libsci/xbnn27g
==> [2023-05-24-21:52:26.972127] Omitting variant static for entry cray-libsci/xbnn27g
==> [2023-05-24-21:52:26.972779] Omitting variant cxx for entry cray-libsci/2pouyij
==> [2023-05-24-21:52:26.972846] Omitting variant fortran for entry cray-libsci/2pouyij
==> [2023-05-24-21:52:26.972900] Omitting variant static for entry cray-libsci/2pouyij
==> [2023-05-24-21:52:26.973502] Omitting variant cxx for entry cray-libsci/raare2f
==> [2023-05-24-21:52:26.973568] Omitting variant fortran for entry cray-libsci/raare2f
==> [2023-05-24-21:52:26.973622] Omitting variant static for entry cray-libsci/raare2f
==> [2023-05-24-21:52:26.974231] Omitting variant cxx for entry cray-libsci/7ygsy65
==> [2023-05-24-21:52:26.974300] Omitting variant fortran for entry cray-libsci/7ygsy65
==> [2023-05-24-21:52:26.974354] Omitting variant static for entry cray-libsci/7ygsy65
==> [2023-05-24-21:52:26.974900] Omitting variant cxx for entry cray-libsci/hfbvyoo
==> [2023-05-24-21:52:26.974960] Omitting variant fortran for entry cray-libsci/hfbvyoo
==> [2023-05-24-21:52:26.975010] Omitting variant static for entry cray-libsci/hfbvyoo
==> [2023-05-24-21:52:26.975562] Omitting variant cxx for entry cray-libsci/kb7k6yy
==> [2023-05-24-21:52:26.975622] Omitting variant fortran for entry cray-libsci/kb7k6yy
==> [2023-05-24-21:52:26.975672] Omitting variant static for entry cray-libsci/kb7k6yy
==> [2023-05-24-21:52:26.976228] Omitting variant cxx for entry cray-libsci/wjof4x3
==> [2023-05-24-21:52:26.976287] Omitting variant fortran for entry cray-libsci/wjof4x3
==> [2023-05-24-21:52:26.976337] Omitting variant static for entry cray-libsci/wjof4x3
==> [2023-05-24-21:52:26.976888] Omitting variant cxx for entry cray-libsci/emuzqpj
==> [2023-05-24-21:52:26.976949] Omitting variant fortran for entry cray-libsci/emuzqpj
==> [2023-05-24-21:52:26.976999] Omitting variant static for entry cray-libsci/emuzqpj
==> [2023-05-24-21:52:26.977628] Omitting variant cxx for entry cray-libsci/255rifz
==> [2023-05-24-21:52:26.977689] Omitting variant fortran for entry cray-libsci/255rifz
==> [2023-05-24-21:52:26.977739] Omitting variant static for entry cray-libsci/255rifz
==> [2023-05-24-21:52:26.990205] Omitting variant debug for entry hdf5/s4r3o7d
==> [2023-05-24-21:52:26.991108] Omitting variant debug for entry hdf5/3ch4fsl
==> [2023-05-24-21:52:27.077571] Omitting variant doxygen for entry netcdf-c/eszacrz
==> [2023-05-24-21:52:27.077667] Omitting variant doc for entry netcdf-c/eszacrz
==> [2023-05-24-21:52:27.081443] Omitting variant static for entry netcdf-cxx4/2btj2dv
==> [2023-05-24-21:52:27.087464] Omitting variant static for entry netcdf-c/rwx4v5n
==> [2023-05-24-21:52:27.087567] Omitting variant doxygen for entry netcdf-c/rwx4v5n
==> [2023-05-24-21:52:27.087627] Omitting variant doc for entry netcdf-c/rwx4v5n
==> [2023-05-24-21:52:27.088560] Omitting variant static for entry netcdf-cxx4/jd4dv32
==> [2023-05-24-21:52:27.096077] Omitting package cray-dsmml: no corresponding repo package
==> [2023-05-24-21:52:27.096624] Omitting package cray-openshmemx: no corresponding repo package
==> [2023-05-24-21:52:27.096816] Omitting variant cxx for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.096881] Omitting variant fortran for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.096931] Omitting variant shared for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.096976] Omitting variant static for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.097019] Omitting variant default64 for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.097070] Omitting variant netmod for entry cray-mpich/5yd2vxb
==> [2023-05-24-21:52:27.098592] /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json: 31 specs read from manifest
==> [2023-05-24-21:52:27.101125] /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-amd-22.06.json: 2 compilers read from manifest
==> [2023-05-24-21:52:27.101400] Reading config from file /home/user/.spack/linux/compilers.yaml
==> [2023-05-24-21:52:27.203305] Reading config from file /home/user/spack/etc/spack/defaults/config.yaml
==> [2023-05-24-21:52:27.259369] DATABASE LOCK TIMEOUT: 60s
==> [2023-05-24-21:52:27.259460] PACKAGE LOCK TIMEOUT: No timeout
==> [2023-05-24-21:52:28.268039] Reading manifest file: /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.10.json
==> [2023-05-24-21:52:28.294467] Omitting variant shared for entry libfabric/ycb27di
==> [2023-05-24-21:52:28.294541] Omitting variant static for entry libfabric/ycb27di
==> [2023-05-24-21:52:28.296015] Omitting package cray-pals: no corresponding repo package
==> [2023-05-24-21:52:28.296422] Omitting variant shared for entry cray-pmi/47h6frx
==> [2023-05-24-21:52:28.296481] Omitting variant static for entry cray-pmi/47h6frx
==> [2023-05-24-21:52:28.297189] Omitting variant cxx for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297250] Omitting variant fortran for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297292] Omitting variant shared for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297329] Omitting variant static for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297365] Omitting variant default64 for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.297400] Omitting variant netmod for entry cray-mpich/jlw6jzm
==> [2023-05-24-21:52:28.298208] Omitting variant cxx for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298271] Omitting variant fortran for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298314] Omitting variant shared for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298353] Omitting variant static for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298388] Omitting variant default64 for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.298423] Omitting variant netmod for entry cray-mpich/k6o6tk5
==> [2023-05-24-21:52:28.299122] Omitting variant cxx for entry cray-libsci/4yvemws
==> [2023-05-24-21:52:28.299181] Omitting variant fortran for entry cray-libsci/4yvemws
==> [2023-05-24-21:52:28.299227] Omitting variant static for entry cray-libsci/4yvemws
==> [2023-05-24-21:52:28.299992] Omitting variant cxx for entry cray-libsci/dwyvjc7
==> [2023-05-24-21:52:28.300050] Omitting variant fortran for entry cray-libsci/dwyvjc7
==> [2023-05-24-21:52:28.300096] Omitting variant static for entry cray-libsci/dwyvjc7
==> [2023-05-24-21:52:28.300844] Omitting variant cxx for entry cray-libsci/ufxclhe
==> [2023-05-24-21:52:28.300902] Omitting variant fortran for entry cray-libsci/ufxclhe
==> [2023-05-24-21:52:28.300948] Omitting variant static for entry cray-libsci/ufxclhe
==> [2023-05-24-21:52:28.301676] Omitting variant cxx for entry cray-libsci/a65u2hk
==> [2023-05-24-21:52:28.301735] Omitting variant fortran for entry cray-libsci/a65u2hk
==> [2023-05-24-21:52:28.301781] Omitting variant static for entry cray-libsci/a65u2hk
==> [2023-05-24-21:52:28.302564] Omitting variant cxx for entry cray-libsci/l6gulml
==> [2023-05-24-21:52:28.302623] Omitting variant fortran for entry cray-libsci/l6gulml
==> [2023-05-24-21:52:28.302669] Omitting variant static for entry cray-libsci/l6gulml
==> [2023-05-24-21:52:28.303453] Omitting variant cxx for entry cray-libsci/2fjnz5k
==> [2023-05-24-21:52:28.303516] Omitting variant fortran for entry cray-libsci/2fjnz5k
==> [2023-05-24-21:52:28.303565] Omitting variant static for entry cray-libsci/2fjnz5k
==> [2023-05-24-21:52:28.304374] Omitting variant cxx for entry cray-libsci/ri3ezpw
==> [2023-05-24-21:52:28.304436] Omitting variant fortran for entry cray-libsci/ri3ezpw
==> [2023-05-24-21:52:28.304484] Omitting variant static for entry cray-libsci/ri3ezpw
==> [2023-05-24-21:52:28.305276] Omitting variant cxx for entry cray-libsci/x63uexo
==> [2023-05-24-21:52:28.305336] Omitting variant fortran for entry cray-libsci/x63uexo
==> [2023-05-24-21:52:28.305386] Omitting variant static for entry cray-libsci/x63uexo
==> [2023-05-24-21:52:28.306170] Omitting variant cxx for entry cray-libsci/3z52nk7
==> [2023-05-24-21:52:28.306251] Omitting variant fortran for entry cray-libsci/3z52nk7
==> [2023-05-24-21:52:28.306302] Omitting variant static for entry cray-libsci/3z52nk7
==> [2023-05-24-21:52:28.307102] Omitting variant cxx for entry cray-libsci/5qrntyj
==> [2023-05-24-21:52:28.307164] Omitting variant fortran for entry cray-libsci/5qrntyj
==> [2023-05-24-21:52:28.307213] Omitting variant static for entry cray-libsci/5qrntyj
==> [2023-05-24-21:52:28.308013] Omitting variant cxx for entry cray-libsci/du32g3c
==> [2023-05-24-21:52:28.308073] Omitting variant fortran for entry cray-libsci/du32g3c
==> [2023-05-24-21:52:28.308122] Omitting variant static for entry cray-libsci/du32g3c
==> [2023-05-24-21:52:28.308919] Omitting variant cxx for entry cray-libsci/szuvkxm
==> [2023-05-24-21:52:28.308980] Omitting variant fortran for entry cray-libsci/szuvkxm
==> [2023-05-24-21:52:28.309029] Omitting variant static for entry cray-libsci/szuvkxm
==> [2023-05-24-21:52:28.309818] Omitting variant cxx for entry cray-libsci/zfr2jmg
==> [2023-05-24-21:52:28.309880] Omitting variant fortran for entry cray-libsci/zfr2jmg
==> [2023-05-24-21:52:28.309928] Omitting variant static for entry cray-libsci/zfr2jmg
==> [2023-05-24-21:52:28.310748] Omitting variant cxx for entry cray-libsci/pkg5pv2
==> [2023-05-24-21:52:28.310811] Omitting variant fortran for entry cray-libsci/pkg5pv2
==> [2023-05-24-21:52:28.310861] Omitting variant static for entry cray-libsci/pkg5pv2
==> [2023-05-24-21:52:28.311657] Omitting variant cxx for entry cray-libsci/h5e4cfa
==> [2023-05-24-21:52:28.311720] Omitting variant fortran for entry cray-libsci/h5e4cfa
==> [2023-05-24-21:52:28.311769] Omitting variant static for entry cray-libsci/h5e4cfa
==> [2023-05-24-21:52:28.312566] Omitting variant cxx for entry cray-libsci/zm3p3je
==> [2023-05-24-21:52:28.312628] Omitting variant fortran for entry cray-libsci/zm3p3je
==> [2023-05-24-21:52:28.312678] Omitting variant static for entry cray-libsci/zm3p3je
==> [2023-05-24-21:52:28.313476] Omitting variant cxx for entry cray-libsci/cxk2wux
==> [2023-05-24-21:52:28.313538] Omitting variant fortran for entry cray-libsci/cxk2wux
==> [2023-05-24-21:52:28.313587] Omitting variant static for entry cray-libsci/cxk2wux
==> [2023-05-24-21:52:28.314408] Omitting variant cxx for entry cray-libsci/ett7czm
==> [2023-05-24-21:52:28.314472] Omitting variant fortran for entry cray-libsci/ett7czm
==> [2023-05-24-21:52:28.314521] Omitting variant static for entry cray-libsci/ett7czm
==> [2023-05-24-21:52:28.315319] Omitting variant cxx for entry cray-libsci/w3tmwrd
==> [2023-05-24-21:52:28.315380] Omitting variant fortran for entry cray-libsci/w3tmwrd
==> [2023-05-24-21:52:28.315428] Omitting variant static for entry cray-libsci/w3tmwrd
==> [2023-05-24-21:52:28.316223] Omitting variant cxx for entry cray-libsci/eqt4ql5
==> [2023-05-24-21:52:28.316285] Omitting variant fortran for entry cray-libsci/eqt4ql5
==> [2023-05-24-21:52:28.316334] Omitting variant static for entry cray-libsci/eqt4ql5
==> [2023-05-24-21:52:28.317121] Omitting variant cxx for entry cray-libsci/7zqjciq
==> [2023-05-24-21:52:28.317183] Omitting variant fortran for entry cray-libsci/7zqjciq
==> [2023-05-24-21:52:28.317233] Omitting variant static for entry cray-libsci/7zqjciq
==> [2023-05-24-21:52:28.318092] Omitting variant cxx for entry cray-libsci/h7fvhly
==> [2023-05-24-21:52:28.318153] Omitting variant fortran for entry cray-libsci/h7fvhly
==> [2023-05-24-21:52:28.318214] Omitting variant static for entry cray-libsci/h7fvhly
==> [2023-05-24-21:52:28.319013] Omitting variant cxx for entry cray-libsci/uihbn3o
==> [2023-05-24-21:52:28.319075] Omitting variant fortran for entry cray-libsci/uihbn3o
==> [2023-05-24-21:52:28.319125] Omitting variant static for entry cray-libsci/uihbn3o
==> [2023-05-24-21:52:28.319921] Omitting variant cxx for entry cray-libsci/lqhorgs
==> [2023-05-24-21:52:28.319983] Omitting variant fortran for entry cray-libsci/lqhorgs
==> [2023-05-24-21:52:28.320031] Omitting variant static for entry cray-libsci/lqhorgs
==> [2023-05-24-21:52:28.320825] Omitting variant cxx for entry cray-libsci/7ygux5q
==> [2023-05-24-21:52:28.320886] Omitting variant fortran for entry cray-libsci/7ygux5q
==> [2023-05-24-21:52:28.320937] Omitting variant static for entry cray-libsci/7ygux5q
==> [2023-05-24-21:52:28.321719] Omitting variant cxx for entry cray-libsci/cdoqfnq
==> [2023-05-24-21:52:28.321779] Omitting variant fortran for entry cray-libsci/cdoqfnq
==> [2023-05-24-21:52:28.321828] Omitting variant static for entry cray-libsci/cdoqfnq
==> [2023-05-24-21:52:28.331545] Omitting variant shared for entry fftw/zda5wuo
==> [2023-05-24-21:52:28.331618] Omitting variant static for entry fftw/zda5wuo
==> [2023-05-24-21:52:28.332525] Omitting variant shared for entry fftw/2pqicpm
==> [2023-05-24-21:52:28.332588] Omitting variant static for entry fftw/2pqicpm
==> [2023-05-24-21:52:28.333451] Omitting variant shared for entry fftw/x6puufz
==> [2023-05-24-21:52:28.333511] Omitting variant static for entry fftw/x6puufz
==> [2023-05-24-21:52:28.334394] Omitting variant shared for entry fftw/z4m7rcy
==> [2023-05-24-21:52:28.334460] Omitting variant static for entry fftw/z4m7rcy
==> [2023-05-24-21:52:28.335421] Omitting variant shared for entry fftw/bjry2tr
==> [2023-05-24-21:52:28.335486] Omitting variant static for entry fftw/bjry2tr
==> [2023-05-24-21:52:28.336451] Omitting variant debug for entry hdf5/7y3xxbq
==> [2023-05-24-21:52:28.337476] Omitting variant debug for entry hdf5/b6hxpfg
==> [2023-05-24-21:52:28.338845] Omitting variant debug for entry hdf5/vqwuhsg
==> [2023-05-24-21:52:28.339870] Omitting variant debug for entry hdf5/phuayap
==> [2023-05-24-21:52:28.340894] Omitting variant doxygen for entry netcdf-c/6uwy4oi
==> [2023-05-24-21:52:28.340960] Omitting variant doc for entry netcdf-c/6uwy4oi
==> [2023-05-24-21:52:28.341944] Omitting variant static for entry netcdf-cxx4/hx6e77n
==> [2023-05-24-21:52:28.343647] Omitting variant static for entry netcdf-c/hycdmi7
==> [2023-05-24-21:52:28.343729] Omitting variant doxygen for entry netcdf-c/hycdmi7
==> [2023-05-24-21:52:28.343780] Omitting variant doc for entry netcdf-c/hycdmi7
==> [2023-05-24-21:52:28.344752] Omitting variant static for entry netcdf-cxx4/a6rodmn
==> [2023-05-24-21:52:28.346412] Omitting variant doxygen for entry netcdf-c/kwlkkwx
==> [2023-05-24-21:52:28.346478] Omitting variant doc for entry netcdf-c/kwlkkwx
==> [2023-05-24-21:52:28.347446] Omitting variant static for entry netcdf-cxx4/lmppo5f
==> [2023-05-24-21:52:28.349082] Omitting variant static for entry netcdf-c/4e5tkhz
==> [2023-05-24-21:52:28.349161] Omitting variant doxygen for entry netcdf-c/4e5tkhz
==> [2023-05-24-21:52:28.349210] Omitting variant doc for entry netcdf-c/4e5tkhz
==> [2023-05-24-21:52:28.350171] Omitting variant static for entry netcdf-cxx4/fsooywo
==> [2023-05-24-21:52:28.353431] Omitting package cray-dsmml: no corresponding repo package
==> [2023-05-24-21:52:28.353913] Omitting package cray-openshmemx: no corresponding repo package
==> [2023-05-24-21:52:28.355818] /opt/cray/pe/cpe-descriptive-manifest/cpe-descriptive-manifest-base-22.10.json: 57 specs read from manifest
==> [2023-05-24-21:52:28.358211] SpecError: Spec is not concrete: cce@14.0.4
==> [2023-05-24-21:52:28.358299] Error: Spec is not concrete: cce@14.0.4
Traceback (most recent call last):
  File "/home/user/spack/lib/spack/spack/main.py", line 1018, in main
    return _main(argv)
  File "/home/user/spack/lib/spack/spack/main.py", line 973, in _main
    return finish_parse_and_run(parser, cmd_name, env_format_error)
  File "/home/user/spack/lib/spack/spack/main.py", line 1001, in finish_parse_and_run
    return _invoke_command(command, parser, args, unknown)
  File "/home/user/spack/lib/spack/spack/main.py", line 650, in _invoke_command
    return_val = command(parser, args)
  File "/home/user/spack/lib/spack/spack/cmd/external.py", line 249, in external
    action[args.external_command](args)
  File "/home/user/spack/lib/spack/spack/cmd/external.py", line 179, in external_read_cray_manifest
    fail_on_error=args.fail_on_error,
  File "/home/user/spack/lib/spack/spack/cmd/external.py", line 225, in _collect_and_consume_cray_manifest_files
    cray_manifest.read(path, not dry_run)
  File "/home/user/spack/lib/spack/spack/cray_manifest.py", line 185, in read
    compilers.extend(compiler_from_entry(x) for x in json_data["compilers"])
  File "/home/user/spack/lib/spack/spack/cray_manifest.py", line 185, in <genexpr>
    compilers.extend(compiler_from_entry(x) for x in json_data["compilers"])
  File "/home/user/spack/lib/spack/spack/cray_manifest.py", line 59, in compiler_from_entry
    return compiler_cls(spec, operating_system, target, paths)
  File "/home/user/spack/lib/spack/spack/compilers/cce.py", line 19, in __init__
    if not self.is_clang_based:
  File "/home/user/spack/lib/spack/spack/compilers/cce.py", line 60, in is_clang_based
    version = self._real_version or self.version
  File "/home/user/spack/lib/spack/spack/compiler.py", line 358, in version
    return self.spec.version
  File "/home/user/spack/lib/spack/spack/spec.py", line 658, in version
    raise spack.error.SpecError("Spec is not concrete: " + str(self))
spack.error.SpecError: Spec is not concrete: cce@14.0.4
```

### Information on your system

* **Spack:** 0.21.0.dev0 (785c31b730586045f5d9ea13fc61ed72b8da7d8e)
* **Python:** 3.6.15
* **Platform:** linux-sles15-zen3
* **Concretizer:** clingo

### General information

- [X] I have run `spack debug report` and reported the version of Spack/Python/Platform
- [X] I have searched the issues of this repo and believe this is not a duplicate
- [X] I have run the failing commands in debug mode and reported the output


Discussion:

Resolving patch:
diff --git a/lib/spack/spack/cmd/external.py b/lib/spack/spack/cmd/external.py
--- a/lib/spack/spack/cmd/external.py
+++ b/lib/spack/spack/cmd/external.py
@@ -79,6 +79,12 @@ def setup_parser(subparser):
     read_cray_manifest.add_argument(
         "--directory", default=None, help="specify a directory storing a group of manifest files"
     )
+    read_cray_manifest.add_argument(
+        "--ignore-default-dir",
+        action="store_true",
+        default=False,
+        help="ignore the default directory of manifest files",
+    )
     read_cray_manifest.add_argument(
         "--dry-run",
         action="store_true",
@@ -177,11 +183,16 @@ def external_read_cray_manifest(args):
         manifest_directory=args.directory,
         dry_run=args.dry_run,
         fail_on_error=args.fail_on_error,
+        ignore_default_dir=args.ignore_default_dir,
     )
 
 
 def _collect_and_consume_cray_manifest_files(
-    manifest_file=None, manifest_directory=None, dry_run=False, fail_on_error=False
+    manifest_file=None,
+    manifest_directory=None,
+    dry_run=False,
+    fail_on_error=False,
+    ignore_default_dir=False,
 ):
     manifest_files = []
     if manifest_file:
@@ -191,7 +202,7 @@ def _collect_and_consume_cray_manifest_files(
     if manifest_directory:
         manifest_dirs.append(manifest_directory)
 
-    if os.path.isdir(cray_manifest.default_path):
+    if not ignore_default_dir and os.path.isdir(cray_manifest.default_path):
         tty.debug(
             "Cray manifest path {0} exists: collecting all files to read.".format(
                 cray_manifest.default_path
diff --git a/lib/spack/spack/cray_manifest.py b/lib/spack/spack/cray_manifest.py
--- a/lib/spack/spack/cray_manifest.py
+++ b/lib/spack/spack/cray_manifest.py
@@ -48,7 +48,8 @@ def translated_compiler_name(manifest_compiler_name):
 def compiler_from_entry(entry):
     compiler_name = translated_compiler_name(entry["name"])
     paths = entry["executables"]
-    version = entry["version"]
+    # to instantiate a compiler class we may need a concrete version:
+    version = "={}".format(entry["version"])
     arch = entry["arch"]
     operating_system = arch["os"]
     target = arch["target"]
diff --git a/lib/spack/spack/platforms/cray.py b/lib/spack/spack/platforms/cray.py
--- a/lib/spack/spack/platforms/cray.py
+++ b/lib/spack/spack/platforms/cray.py
@@ -37,7 +37,9 @@
 
 
 def slingshot_network():
-    return os.path.exists("/opt/cray/pe") and os.path.exists("/lib64/libcxi.so")
+    return os.path.exists("/opt/cray/pe") and (
+        os.path.exists("/lib64/libcxi.so") or os.path.exists("/usr/lib64/libcxi.so")
+    )
 
 
 def _target_name_from_craype_target_name(name):


Test patch: