There is an error with Trilinos when installing Aspect using Candi

Hello, developers of Aspect:
I’m currently installing Aspect using candi, and I’ve encountered the following issues. There is an issue during the installation of Trilinos 14 - 4 - 0. It requires BLAS to support floating - point operations. However, I’ve already installed BLAS, LAPACK, and OpenBLAS, but I still get the following error.
– Creating ETI files for Blas1_axpby_mv
– Creating ETI files for Blas1_update
– Creating ETI files for Blas1_update_mv
– Creating ETI files for Blas1_sum
– Creating ETI files for Blas1_sum_mv
– Creating ETI files for Blas1_nrm1
– Creating ETI files for Blas1_nrm1_mv
– Creating ETI files for Blas1_nrm2w
– Creating ETI files for Blas1_nrm2w_mv
– Creating ETI files for Blas1_nrminf
– Creating ETI files for Blas1_nrminf_mv
– Creating ETI files for Blas1_iamax
– Creating ETI files for Blas1_iamax_mv
– Creating ETI files for Blas1_nrm2
– Creating ETI files for Blas1_nrm2_mv
– Creating ETI files for Blas1_mult
– Creating ETI files for Blas1_mult_mv
– Creating ETI files for Blas1_reciprocal
– Creating ETI files for Blas1_reciprocal_mv
– Creating ETI files for Blas1_rot
– Creating ETI files for Blas1_rotg
– Creating ETI files for Blas1_rotm
– Creating ETI files for Blas1_rotmg
– Creating ETI files for Blas1_swap
– Creating ETI files for Blas2_gemv
– Creating ETI files for Blas2_ger
– Creating ETI files for Blas3_gemm
– Creating ETI files for Blas3_trsm
– Creating ETI files for Blas3_trmm
– Creating ETI files for Blas_trtri
– Creating ETI files for Graph_color_d1
– Creating ETI files for Sparse_sptrsv_solve
– Creating ETI files for Sparse_spmv_struct
– Creating ETI files for Sparse_spmv_mv_struct
– Creating ETI files for Sparse_spmv_bsrmatrix
– Creating ETI files for Sparse_spmv_mv_bsrmatrix
– Creating ETI files for Sparse_spmv
– Creating ETI files for Sparse_spmv_mv
– Creating ETI files for Sparse_spgemm_symbolic
– Creating ETI files for Sparse_spgemm_numeric
– Creating ETI files for Sparse_spgemm_noreuse
– Creating ETI files for Sparse_bspgemm_numeric
– Creating ETI files for Sparse_spgemm_jacobi
– Creating ETI files for Sparse_spadd_symbolic
– Creating ETI files for Sparse_spadd_numeric
– Creating ETI files for Sparse_spiluk_symbolic
– Creating ETI files for Sparse_spiluk_numeric
– Creating ETI files for Sparse_par_ilut_symbolic
– Creating ETI files for Sparse_par_ilut_numeric
– Creating ETI files for Sparse_gmres
– Creating ETI files for Sparse_sptrsv_symbolic
– Creating ETI files for Sparse_trsv
– Creating ETI files for Sparse_gauss_seidel_symbolic
– Creating ETI files for Sparse_gauss_seidel_numeric
– Creating ETI files for Sparse_gauss_seidel_apply
Processing enabled top-level package: RTOp (Libs)
Processing enabled top-level package: Sacado (Libs)
– Performing Test HAS_C99_TR1_CMATH
– Performing Test HAS_C99_TR1_CMATH - Success
Processing enabled top-level package: Epetra (Libs)
– Looking for dggsvd3
– Looking for dggsvd3 - not found
– Looking for dggsvd3_
– Looking for dggsvd3_ - found
– Looking for DGGSVD3
– Looking for DGGSVD3 - not found
– Looking for DGGSVD3_
– Looking for DGGSVD3_ - not found
Found new version of lapack. dggsvd3 is available.
Processing enabled top-level package: Zoltan (Libs)
Processing enabled top-level package: Shards (Libs)
Processing enabled top-level package: Triutils (Libs)
Processing enabled top-level package: EpetraExt (Libs)
Processing enabled top-level package: Tpetra (TSQR, Core)
– Tpetra: Using internal Kokkos
– Tpetra: Enabling deprecated code
– Determine whether Tpetra will assume that MPI is GPU aware:
– - Tpetra_INST_CUDA, Tpetra_INST_HIP and Tpetra_INST_SYCL atre OFF, so Tpetra will assume that MPI is not GPU aware.
– Tpetra execution space availability (ON means available):
– - Serial: ON
– - Threads: OFF
– - OpenMP: OFF
– - Cuda: OFF
– - HIP: OFF
– - SYCL: OFF
– Tpetra: Tpetra_INST_INT_LONG_LONG is enabled by default.
– Tpetra: Tpetra_INST_INT_UNSIGNED is disabled by default.
– Tpetra: Tpetra_INST_INT_UNSIGNED_LONG is disabled by default.
– Tpetra: Tpetra_INST_INT_INT is disabled by default.
– Tpetra: Tpetra_INST_INT_LONG is disabled by default.
CMake Error at packages/tpetra/CMakeLists.txt:930 (MESSAGE):
Tpetra: Tpetra_INST_FLOAT is ON (meaning that you want to instantiate
and/or test Tpetra with Scalar = float), but HAVE_TEUCHOS_BLASFLOAT is OFF.
This means that you are linking with a BLAS library that lacks float (S)
support. Tpetra needs a BLAS implementation that supports float.

– Configuring incomplete, errors occurred!
Failure with exit status: 1
Exit message: There was a problem configuring trilinos 14-4-0.

Anything help will be appreciated!

@YUAN The error message describes what is going wrong:

This means that you are linking with a BLAS library that lacks float (S)
support. Tpetra needs a BLAS implementation that supports float.

BLAS defines functions for single precision (float, “S”) and double precision (double, “D”) data types. Apparently your BLAS only has the latter but not the former. The question for you to answer then is why that is so – in particular, where does the BLAS installation on your system come from, and why is it missing the float functions?

Best
W.

Thank you so much for your timely help!