Scheduled Downtime
On Friday 21 April 2023 @ 5pm MT, this website will be down for maintenance and expected to return online the morning of 24 April 2023 at the latest

Compilation error

Dear Sir/Madam,
When I was trying to compile wrfda from version WRF4.0. All the executables except da_wrfvar.exe are executed. I have checked the path of the library that I have linked for compilation. I have tried to figure out the issues but I couldn't. Herewith I have attached the compilation log file for your perusal. I kindly request you to look into it and let me know how to resolve the issue.


  • compile.txt
    596.2 KB · Views: 6
Hello naveenkrishnan1992,

Sorry to hear it isn't compiling. I think I found the issue in this part of the compile.txt:
/usr/bin/ld: rttov_read_coefs.F90:(.text+0x3cb): undefined reference to `__rttov_hdf_mod_MOD_is_hdf_64bit_reals' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x3d9): undefined reference to `__rttov_hdf_mod_MOD_open_hdf' /usr/bin/ld: rttov_read_coefs.F90:(.text+0xeb4): undefined reference to `rttov_hdf_load_' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x12af): undefined reference to `rttov_hdf_load_' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x142e): undefined reference to `__rttov_hdf_mod_MOD_open_hdf' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x1783): undefined reference to `__rttov_hdf_mod_MOD_close_hdf' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x23c8): undefined reference to `rttov_hdf_load_' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x24ac): undefined reference to `rttov_hdf_load_' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x2587): undefined reference to `rttov_hdf_load_' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x2675): undefined reference to `rttov_hdf_load_' /usr/bin/ld: rttov_read_coefs.F90:(.text+0x275e): undefined reference to `rttov_hdf_load_'

It looks like you didn't compile your rttov or the link isn't correct. Here are a few tips:
  1. Check your rttov version. It's very specific which one you use (I want to say v12.3 but double check)
  2. Check that rttov compiled properly. There are 2 tests you can run to ensure it was compiled properly. Those tests are either in a README or somewhere on the website where you got rttov
  3. Check the rttov link in WRFDA in the configure.wrf file (this is generated after you run the ./configure 4dvar). You will need to modify it and add the paths before you compile WRFDA
  4. Check to make sure your rttov link on your computer is set properly. When you do: echo $RTTOV_PATH (or whatever the variable is called), it should link to it
  5. If rttov isn't compiling, then you might have something wrong with your modules, I would also check those
Please let me know if those resolved any of your issues and good luck.