ATS installation error

55 views
Skip to first unread message

P. James Dennedy-Frank

unread,
May 25, 2025, 3:40:44 PMMay 25
to Amanzi-ATS Users
Hi All,

Unfortunately we need to reinstall ATS for our University HPC as they are shifting to a new setup. 

I am hitting a new error when installing ATS: /usr/bin/ld: ../src/libxerces-c-3.2.so: undefined reference to `libiconv'. This occurs while installing xerces, so the error is in the xerces-build-err.log (it shows up as a CMake error in stderr). 

I *think* this occurs because I need to load an anaconda module to access the BLAS libraries. However, this anaconda module has its own iconv that becomes the primary iconv executable when the module is loaded (at /shared/EL9/explorer/anaconda3/2024.06/bin/iconv). I'm not quite sure how to link the ATS installer to the iconv in /usr/bin. I know that there are some calls to manually write the location of the compilers (e.g., —with-c-compiler=/path/to/mpicc), however I'm not sure if there is the equivalent for linking to these libraries. 

It's also possible that I am on the completely wrong path here; if so, apologies, and please let me know if you have other suggestions of how to troubleshoot this.

Thank you very much for your help!

Best,
James

Amanzi-ATS Users

unread,
May 27, 2025, 12:18:57 AMMay 27
to Amanzi-ATS Users

Hi James,

      I've been helping Cindy with the configuration on your HPC systems recently so I'm not sure if this update is newer than that.  It would be good to be working with the same set of packages anyway.  For what it's worth here's the content of her script to "require" the valet packages (equivalent to loading modules for those on other HPC systems):

vpkg_devrequire anaconda/2024.02
source /opt/shared/anaconda/2024.02/etc/profile.d/conda.sh
conda activate base
vpkg_devrequire cmake
vpkg_devrequire gcc/12.1.0
vpkg_devrequire openmpi/4.1.4:gcc-12.1.0
vpkg_devrequire lapack

So it does look like you've got a newer anaconda.   Should be okay though I think.  Just note that the Anaconda package is loaded first so the other compiler libraries, mpi and lapack come first in the relevant environment paths.  The lapack package provides blas and lapack.  

As for the compilers (the mpi wrappers like mpicc) we have generally found that only the Cray systems require those to be provided explicitly.   On most systems you specify the base directory of the mpi installation and everything is found as needed under that.   On your system this base directory is stored in the OPENMPI_PREFIX environment variable.  So in Cindy's customized ATS build script she uses

--with-mpi=${OPENMPI_PREFIX}

Also note that we are working through some issues with gcc 14 and CMake > 4.   So if either of those situations apply now due to system updates let me know. 

Hope these things help, but let us know if you're still having issues.  

Cheers, David

P. James Dennedy-Frank

unread,
May 27, 2025, 5:44:37 PMMay 27
to Amanzi-ATS Users
Hi David,

Thanks for the response! I don't *think* that Cindy is here at Northeastern; I don't know of anyone else here that is using ATS and our system here (previously Discovery, now Explorer) uses module rather than vpkg. 

I believe that I figured it out; they added an OpenBLAS module after my first attempt (new modules are being added quickly as they spin up this new machine). It seems to have installed correctly when I import the OpenBLAS module but *not* the anaconda module. This meant that it didn't rely on anaconda for the BLAS/LAPACK references and so got through that part of the installation, and then was referencing the system iconv rather than the iconv inside anaconda when installing xerces, so that went through fine. It didn't hit any other problems along the way. 

As we discussed this spring, I checked the version and I get the following:
ATS version     1.5.2_038dc6fc
GIT branch      ats-1.5
GIT global hash 038dc6fc

Amanzi version  1.6-dev_37861eabf
GIT branch      amanzi-1.5
GIT global hash 37861eabf

Can you confirm that this all looks good and that the variable density flow components are all working correctly in this version? 

Thanks a bunch for all your help with this ATS stuff!

Best,
James

Amanzi-ATS Users

unread,
May 29, 2025, 7:30:19 PMMay 29
to Amanzi-ATS Users
Hi James,

     LOL, my mistake I apologize.   Cindy is at U of Delaware working with Holly Michael.   I must need more sleep - or something. 

Glad you got it to work.   The observation you made about blas/lapack is consistent with what I had in my last email - it's largely independent of the system but beware of Anaconda taking over things.   So we recommend loading the Anaconda module first, and then the compilers, mpi, blas, etc. after it so that those will come first in your PATH and confusion over compilers, mpi and blas doesn't happen.   In other words if you really wanted to have both Anaconda and the OpenBLAS loaded that's probably ok as long as you load Anaconda first.

I can see from the version tags that I still have a bit of work to do there.  What you can count is the branch name and the global hash.    So in the Amanzi information you can double check that the hash (37861eabf) is really at the head of the amanzi-1.5 branch (and it is).  Similarly, you can check that the hash (038dc6fc) is really at the head of the ats-1.5 branch (and it is).   So you built the latest ATS 1.5.2.  

As for the variable density flow let me ask Daniil to chime in, I'm not 100% sure where we left thing on this branch.  What I can say is that the updates for reactive transport that address subcycling issues and variable density flow are in final testing on the master branch and we are planning an Office Hours session in our regular Tuesday meetings very soon (probably next week).   So it would be great if you could join then and any questions we don't answer feel free to ask about.

Cheers, David

Coon, Ethan

unread,
May 30, 2025, 10:46:07 AMMay 30
to Amanzi-ATS Users

Variable density flow is fine on ats-1.5.  There have been significant changes to transport in general on master, but as long as you don’t subcycle transport relative to flow and aren’t too worried about the details of lagging/interpolation/splitting errors of density across the timestep, 1.5 is fine for variable density.

 

Ethan

 

--
You received this message because you are subscribed to the Google Groups "Amanzi-ATS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ats-users+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ats-users/e388473a-cdf9-4275-a482-fe14b31023cbn%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages