Hello,
I decided to rebuild my entire CMAQ from the ground up including the libraries since there seemed to be no solution to my other problem. I am now running into this problem when I try and run the benchmark.
Hello,
I decided to rebuild my entire CMAQ from the ground up including the libraries since there seemed to be no solution to my other problem. I am now running into this problem when I try and run the benchmark.
This is potentially a LD_LIBRARY_PATH
problem⌠or a failure to follow the CMAQ-build instructions.
Evidently, you are using a vendor supplied shared-object netCDF library, rather than following the advice to build a static netCDF library using the same compiler and flags as you used for CMAQ, and using the resulting (libnetcdf.a
and) libnetcdf.a
to build CMAQ.
Note that shared library usage is particularly problematic on institutional servers, since it frequently requires module load⌠commands that may be incompatible with the batch-servers used on those same machines ;-(
I was following the commands given in https://github.com/USEPA/CMAQ/blob/master/DOCS/Users_Guide/Tutorials/CMAQ_UG_tutorial_build_library_gcc.md I didnt see anything about shared vs static
I tried to redo the NetCDF Fortran part with a static library as you suggested but now I am getting the error
checking if Fortran âbyteâ is C âsigned charâ⌠configure: error: Could not link conftestf.o and conftest.o
The I/O API manual is at
https://www.cmascenter.org/ioapi/documentation/all_versions/html/AA.html
and https://cjcoats.github.io/ioapi/AA.html; the
âAvailability/Download/Installationâ link is under that, e.g.,
https://www.cmascenter.org/ioapi/documentation/all_versions/html/AVAIL.html
See Item 8 under âBuild and installation instructions for I/O API Versions
3.0, 3.1, and 3.2â.
See also
https://www.cmascenter.org/ioapi/documentation/all_versions/html/AVAIL.html#ncf4
for info about recommended configuration
information for netCDF.
To the extent the CMAQ tutorial has misled you on these points, it needs
to be fixed.
FWIW â
Carlie J. Coats, Jr., Ph.D. cjcoats@email.unc.edu
Senior Software Engineer I/O API Author/Maintainer
Center for Environmental Modeling for Policy Development,
UNC Institute for the Environment www.ie.unc.edu
100 Europa Dr., Suite 490 Rm 4051 / Campus Box 1105 919.843.5951
Chapel Hill, NC 27599-1105 Fax 919.966.9920
So I have succesfully fixed the problem with my netCDF Fortran by setting the LIBS=-lgfortran and both the FC and F77 to gfortran.
Now I am getting a new problem when trying to run make in /m3tools. I get the error:
collect2: error: ld returned 1 exit status
Makefile:208: recipe for target âairs2m3â failed
make: *** [airs2m3] Error 1
make.log.txt (1.9 KB)
This is yet another of those netCDF-incompatible-from-version-to-version problems. Add
-DIOAPI_NCF4=1
to the ARCHFLAGS
in your ioapi/Makeinclude.${BIN} and then do
make clean; make
in your I/O API directory.
Totally worked! Thanks!
Hi
I have a question about benchmarking. Why we have different errors for different species? For example, my maximum error for ozone is 0.08%, but for NO2 is 4.5%!! Why we donât have similar errors for all of the species??
Thank you
Hi Esm,
Please ask this type of question in a new issue. Adding comments to existing issues makes it difficult to track and answer your question. You can reference the existing issue by putting a link within your new issue to an older issue as follows: CMAQV53 Benchmark Run "Cannot open shared object file"
Thank you, Liz
Hi Liz,
Ok, Thank you.