NOAA-EMC / wgrib2

Provides functionality for interacting with, reading, writing, and manipulating GRIB2 files.
21 stars 13 forks source link

Implement wgrib2 v2.0.8 #1

Closed GeorgeGayno-NOAA closed 4 years ago

GeorgeGayno-NOAA commented 4 years ago

The wgrib2 library is required by the UFS_UTILS chgres_cube program, which will be used by GEFS once GFS v16 is implemented. Currently, that program points to a local copy. Need to formally implement wgrib2 (both the library/api and the stand-alone executable) on WCOSS.

GeorgeGayno-NOAA commented 4 years ago

The branch at ca7cb1a was successfully compiled as a library on Hera, Jet, Dell and Cray. The chgres_cube program was recompiled with this library, then its regression tests were run. All tests passed.

GeorgeGayno-NOAA commented 4 years ago

The branch at ca7cb1a was successfully compiled as a library on Hera, Jet, Dell and Cray. The chgres_cube program was recompiled with this library, then its regression tests were run. All tests passed.

Decided to use Kyle's cmake version of wgrib2 instead of the version in my feature/v2.0.8 branch.

kgerheiser commented 4 years ago

And it works?

GeorgeGayno-NOAA commented 4 years ago

And it works?

Once I can build it on all supported machines, I will test the library in my chgres_cube program.

kgerheiser commented 4 years ago

Oh, I sort of had my hopes up that you tried it and it just worked.

I pushed some updates to the branch's README that should help you build it. I kept all the options the same, and I think the default ones are what are used to build for the public release.

Specifically, MAKE_FTN_API, USE_JASPER, and USE_PNG are on.

kgerheiser commented 4 years ago

Going to try and build UFS_UTILS with it and see how it goes

kgerheiser commented 4 years ago

Found some minor bugs, but I'm making progress

kgerheiser commented 4 years ago

Got it building. I'll push those changes and give better instructions.

kgerheiser commented 4 years ago

Take a look at this @climbfuji @GeorgeGayno-NOAA :

https://github.com/kgerheiser/UFS_UTILS/tree/feature/cmake_wgrib2

https://github.com/kgerheiser/NCEPLIBS-wgrib2/tree/feature/cmake

I made the changes to link to the wgrib2 CMake build, as well as updated the cmake branch of wgrib2.

It builds the chgres_cube executable, so that's something, though I haven't run it.

Build my wgrib2 and then when building UFS_UTILS set -Dwgrib2_ROOT=path/to/wgrib2/install

As a sidenote, the develop branch of UFS_UTILS should be updated at some point to use the updated NCEPLIBS builds. The only real change is linking libraries with their namespace like w3nco_d becomes w3nco::w3nco_d.

kgerheiser commented 4 years ago

My CMake build of wgrib2 Passes regression tests according to @GeorgeGayno-NOAA

GeorgeGayno-NOAA commented 4 years ago

My CMake build of wgrib2 Passes regression tests according to @GeorgeGayno-NOAA

The CMake build of the wgrib2 library/api (using 1a510e2a) was successful on Orion, Jet, Hera, Cray and Dell.

The library was then tested in the chgres_cube program (using https://github.com/GeorgeGayno-NOAA/UFS_UTILS/commit/7432844b511b8f5707dace5f57d6954ca0e265f1). All regression tests passed.

kgerheiser commented 4 years ago

I think this can be closed