<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:Consolas;
        color:windowtext;
        font-weight:normal;
        font-style:normal;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:14.0pt">I think Wesley knows more about this than I do, but here’s my understanding:
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:14.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:14.0pt">The patches to jasper-1.900.1 for supporting JPEG2000 didn’t change the version number, so it’s a little hard to know which one you have. I got my src tarball from Wesley, and haven’t touched it in years.
 There is a small but non-zero chance you will encounter a GRIB2 file that employs PNG compression. The RTGSST data from NCEP is another example. I would build your grib2 library with the Spack jasper version 1.900.1 and do some testing later with some grib2
 files you need to read. Or you could use wgrib2 to change the compression algorithm in your data file.
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:14.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:14.0pt">As for which PNG version, upgrading to libpng15 solved some image printing issues with Cairo, and I and have not had any problems with g2clib using libpng15.  Just make sure that the libpng version is consistent
 across all the libraries that use it that are linked with grads. I make heavy use of the ‘ldd’ command on unix systems to see what shared libraries my executables and libraries depend on (‘otool -L’ is the Mac equivalent). When you’re done testing the I/O
 of your grib2 file by displaying a variable, test the image printing with the ‘gxprint’ command.
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:14.0pt">--Jennifer<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:14.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt">-- <span style="color:black"><br>
Jennifer Miletta Adams<br>
ADNET Systems, Inc.<br>
NASA/GSFC, Code 610.2</span><o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;color:black">Building 32, Room S159<br>
(301) 614-6070<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">gradsusr <gradsusr-bounces@gradsusr.org> on behalf of "Thompson, Matt (GSFC-610.1)[SCIENCE SYSTEMS AND APPLICATIONS INC]" <matthew.thompson@nasa.gov><br>
<b>Reply-To: </b>GrADS Users Forum <gradsusr@gradsusr.org><br>
<b>Date: </b>Tuesday, January 8, 2019 at 1:36 PM<br>
<b>To: </b>Wesley Ebisuzaki - NOAA Federal <wesley.ebisuzaki@noaa.gov>, GrADS Users Forum <gradsusr@gradsusr.org><br>
<b>Subject: </b>Re: [gradsusr] Will grads be in spack?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:Consolas">Wesley,</span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:Consolas"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:Consolas">Spack seems to have 1.25.7 as a Safe Version. Is that sufficient?</span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:Consolas"> </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:Consolas">Matt</span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:Consolas"> </span><o:p></o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New Roman",serif">-- </span><o:p></o:p></p>
<div>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:12.0pt;font-family:Consolas">Matt Thompson, SSAI, Sr Scientific Programmer/Analyst</span><o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:12.0pt;font-family:Consolas">NASA GSFC,    Global Modeling and Assimilation Office</span><o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:12.0pt;font-family:Consolas">Code 610.1,  8800 Greenbelt Rd,  Greenbelt,  MD 20771</span><o:p></o:p></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:12.0pt;font-family:Consolas">Phone: 301-614-6712                 Fax: 301-614-6246</span><o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><u><span style="font-size:12.0pt;font-family:Consolas;color:#0000E9">http://science.gsfc.nasa.gov/sed/bio/matthew.thompson</span></u><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:Consolas"> </span><o:p></o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">Wesley Ebisuzaki - NOAA Federal <wesley.ebisuzaki@noaa.gov><br>
<b>Date: </b>Tuesday, January 8, 2019 at 12:17 PM<br>
<b>To: </b>GrADS Users Forum <gradsusr@gradsusr.org><br>
<b>Cc: </b>"Thompson, Matt (GSFC-610.1)[SCIENCE SYSTEMS AND APPLICATIONS INC]" <matthew.thompson@nasa.gov><br>
<b>Subject: </b>Re: [gradsusr] Will grads be in spack?</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">Matt,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">The original jasper 1.900.1 libraries from the univ of victoria had problems and<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">both the redhat and debian updates fixed the problems.  After many years,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">the original author started updating jasper and fixing the bugs.  The last<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">time that I looked (1+ years ago), there was a small API change which would<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">require a change in g2clib.  So you will have to check which version of jasper<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">is already in spark.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">G2clib requires libpng 1.2.xx.  Not sure 1.5.xx will work.  PNG grib files are<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">rare but not extinct.  ESRL uses them for processed radar fields.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Wesley Ebisuzaki<o:p></o:p></p>
</div>
<p class="MsoNormal"> <o:p></o:p></p>
<div>
<div>
<p class="MsoNormal">On Tue, Jan 8, 2019 at 11:56 AM Adams, Jennifer M. (GSFC-610.2)[ADNET SYSTEMS INC] <<a href="mailto:jennifer.m.adams@nasa.gov">jennifer.m.adams@nasa.gov</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<p class="MsoNormal">Hi, Matt -- <br>
1. The shapelib library has been around for a while, and it's very easy to build, if a Spack package doesn't exist, it won't be hard to create.
<br>
2. You definitely want to enable opendap in the NetCDF library. The dap/gadap libs in GrADS are for accessing station data (as opposed to grids) via GDS, but I don't think there is anyone out there putting station data behind GDS anymore.
<br>
3. GrADS will require some code changes to use udunits2.  For now, you'll have to wrangle udunits1 into submission.
<br>
4. As for GRIB2,  forget ECMWF; GrADS relies on NCEP's g2clib to handle the I/O.  In sickness and in health, for better or worse, in good times and bad, etc. To properly support JPEG2000 compression (which is used in some NCEP products), a special version of
 the jasper library is needed (<a href="ftp://cola.gmu.edu/grads/Supplibs/2.2/src/jasper-1.900.1-14ubuntu3.2.debian.tar.gz" target="_blank">ftp://cola.gmu.edu/grads/Supplibs/2.2/src/jasper-1.900.1-14ubuntu3.2.debian.tar.gz</a>).
<br>
<br>
--Jennifer<br>
<br>
-- <br>
Jennifer Miletta Adams<br>
ADNET Systems, Inc.<br>
NASA/GSFC, Code 610.2<br>
Building 32, Room S159<br>
(301) 614-6070<br>
<br>
<br>
On 1/8/19, 8:45 AM, "Thompson, Matt (GSFC-610.1)[SCIENCE SYSTEMS AND APPLICATIONS INC]" <<a href="mailto:matthew.thompson@nasa.gov" target="_blank">matthew.thompson@nasa.gov</a>> wrote:<br>
<br>
    Jennifer, et al,<br>
<br>
    I just did a quick scan of this page:<br>
<br>
      <a href="http://cola.gmu.edu/grads/gadoc/supplibs2.html" target="_blank">http://cola.gmu.edu/grads/gadoc/supplibs2.html</a><br>
<br>
    and tried to match with spack packages. Most had pretty good matches <br>
    (though they might be called "libX" instead of "X"), and the only <br>
    libraries I couldn't find are:<br>
<br>
      dap<br>
      gadap<br>
      shapelib<br>
<br>
    and there are two that I don't think are quite right:<br>
<br>
      udunits ==> spack has udunits2<br>
      g2clib  ==> spack has grib-api, eccodes<br>
<br>
    You said to ignore dap/gadap, so I'm happy with that. Note that in my <br>
    testing I'm always building netcdf with the dap variant and it works for <br>
    that at least:<br>
<br>
    [(513) 08:43 AM] $ ncdump -hsc <br>
    <a href="https://opendap.nccs.nasa.gov/dods/GEOS-5/fp/0.25_deg/fcast/inst1_2d_hwl_Nx/inst1_2d_hwl_Nx.20181222_12" target="_blank">
https://opendap.nccs.nasa.gov/dods/GEOS-5/fp/0.25_deg/fcast/inst1_2d_hwl_Nx/inst1_2d_hwl_Nx.20181222_12</a>
<br>
    | head -20<br>
    netcdf inst1_2d_hwl_Nx {<br>
    dimensions:<br>
        lat = 721 ;<br>
        lon = 1152 ;<br>
        time = 123 ;<br>
    variables:<br>
        double time(time) ;<br>
                time:grads_dim = "t" ;<br>
                time:grads_mapping = "linear" ;<br>
                time:grads_size = "123" ;<br>
<br>
<br>
    shapelib seems pretty standard in its build, so a package for it seems <br>
    possible.<br>
<br>
    udunits was the precursor to udunits2, so a package for it probably <br>
    isn't impossible either though we might need to talk with spack about <br>
    naming it as "udunits" nowadays usually refers to the udunits2 package <br>
    (udunits1?).<br>
<br>
    You have instructions for g2clib as well so it's probably doable as <br>
    well, but ECMWF's (deprecated) grib-api and eccodes are in spack. I'm <br>
    guessing, though, that the APIs are not the same?<br>
<br>
    Matt<br>
<br>
<br>
    On 1/7/19 12:17 PM, Adams, Jennifer M. (GSFC-610.2)[ADNET SYSTEMS INC] <br>
    wrote:<br>
    > Matt, I see you are taking on the role of GMAO’s Fairy Godmother … Bravo!<br>
    > <br>
    > The m4 macros used by the GrADS autoconfigure scripts with the --enable-dyn-supplibs option are not perfect. I was rushing to get them into some kind of working state when releasing version 2.2.1 right before my position at COLA ended. Please use the
 source code at <a href="https://github.com/j-m-adams/GrADS" target="_blank">https://github.com/j-m-adams/GrADS</a>, and not the tarball from COLA, which is missing a few scripts. I will try to incorporate the patches from Steve Woodbridge as quickly as I can.
 Not all libraries use the PKG_CONFIG model, so it is a mix of strategies for finding what is needed. I definitely rely on $LDFLAGS, $CFLAGS, $CPPFLAGS, and $LD_LIBRARY_PATH to find everything. The grib2 library is a good example of one with non-standard features
 -- that lib is barely supported within NCEP and has zero bells and whistles for simplifying your life; you have to edit the makefile to tweak the build and then copy files manually to install them outside of the local directory. Don't bother with dap/gadap.
 What else is not available in Spack?<br>
    > --Jennifer<br>
    > <br>
    > <br>
    > --<br>
    > Jennifer Miletta Adams<br>
    > ADNET Systems, Inc.<br>
    > NASA/GSFC, Code 610.2<br>
    > Building 32, Room S159<br>
    > (301) 614-6070<br>
    > <br>
    > ________________________________________<br>
    > From: gradsusr [<a href="mailto:gradsusr-bounces@gradsusr.org" target="_blank">gradsusr-bounces@gradsusr.org</a>] on behalf of Thompson, Matt (GSFC-610.1)[SCIENCE SYSTEMS AND APPLICATIONS INC] [<a href="mailto:matthew.thompson@nasa.gov" target="_blank">matthew.thompson@nasa.gov</a>]<br>
    > Sent: Monday, January 07, 2019 10:47 AM<br>
    > To: GrADS Users Forum<br>
    > Subject: Re: [gradsusr] Will grads be in spack?<br>
    > <br>
    > All,<br>
    > <br>
    > I've been trying to slowly move GMAO's GEOS model's Baselibs to spack. This has involved learning how to make new spack packages, which has been interesting (and not quite fully successful yet, to be honest, but I'm learning!). Now, Baselibs started as
 an offshoot of Supplibs, so I am learning some useful and perhaps relevant lessons.<br>
    > <br>
    > Looking at how GrADS is built (which I've never done as the binaries work fine for my needs), the main issue I see at present is figuring out how to build GrADS without the SUPPLIBS being in one place. GEOS inherited this as it expects Baselibs to all
 be under one place as well. With GEOS I have the "luxury" of knowing its very odd non-standard GNU Make build system and could probably hack it to find spack's libraries without too much trouble, but GEOS relies on fewer libraries than GrADS.<br>
    > <br>
    > GrADS, though, uses configure. Yay for us builders and it looks like some of the libraries seem exposed to configure (--with-netcdf, etc.) but not all. Does anyone out there have experience building GrADS with --enable-dyn-supplibs? If you've documented
 how to get GrADS to find and use system libraries, spack might be okay with that (with, say, loooong LDFLAGS, LIBS, CPPFLAGS lines). The only other thought would be finding an autotools hacker who could expose all the supplibs with --with-PKG options.<br>
    > <br>
    > As an aside, it looks like most of Supplibs is in spack, but not all (g2clib, a few others), so eventually a limited GrADS might be doable, with a nigh-complete build if other Supplibs were ported.<br>
    > <br>
    > Matt<br>
    > <br>
    > <br>
    > --<br>
    > Matt Thompson, SSAI, Sr Scientific Programmer/Analyst<br>
    > NASA GSFC,    Global Modeling and Assimilation Office<br>
    > Code 610.1,  8800 Greenbelt Rd,  Greenbelt,  MD 20771<br>
    > Phone: 301-614-6712                 Fax: 301-614-6246<br>
    > <a href="http://science.gsfc.nasa.gov/sed/bio/matthew.thompson" target="_blank">
http://science.gsfc.nasa.gov/sed/bio/matthew.thompson</a><br>
    > <br>
    > On 1/4/19, 2:08 PM, "gradsusr on behalf of Tom Robinson" <<a href="mailto:gradsusr-bounces@gradsusr.org" target="_blank">gradsusr-bounces@gradsusr.org</a> on behalf of
<a href="mailto:ter@hawaii.edu" target="_blank">ter@hawaii.edu</a>> wrote:<br>
    > <br>
    >      I have recently been using spack to install scientific software. It really makes things easy. Is there any plan to add grads to spack?<br>
    > <br>
    >      -Tom<br>
    > <br>
    >      Sent from my iPhone<br>
    >      _______________________________________________<br>
    >      gradsusr mailing list<br>
    >      <a href="mailto:gradsusr@gradsusr.org" target="_blank">gradsusr@gradsusr.org</a><br>
    >      <a href="http://gradsusr.org/mailman/listinfo/gradsusr" target="_blank">
http://gradsusr.org/mailman/listinfo/gradsusr</a><br>
    > <br>
    > <br>
    > <br>
    > _______________________________________________<br>
    > gradsusr mailing list<br>
    > <a href="mailto:gradsusr@gradsusr.org" target="_blank">gradsusr@gradsusr.org</a><br>
    > <a href="http://gradsusr.org/mailman/listinfo/gradsusr" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a><br>
    > <br>
    > _______________________________________________<br>
    > gradsusr mailing list<br>
    > <a href="mailto:gradsusr@gradsusr.org" target="_blank">gradsusr@gradsusr.org</a><br>
    > <a href="http://gradsusr.org/mailman/listinfo/gradsusr" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a><br>
    > <br>
<br>
<br>
    -- <br>
    Matt Thompson, SSAI, Sr Scientific Programmer/Analyst<br>
    NASA GSFC,    Global Modeling and Assimilation Office<br>
    Code 610.1,  8800 Greenbelt Rd,  Greenbelt,  MD 20771<br>
    Phone: 301-614-6712                 Fax: 301-614-6246<br>
    <a href="http://science.gsfc.nasa.gov/sed/bio/matthew.thompson" target="_blank">
http://science.gsfc.nasa.gov/sed/bio/matthew.thompson</a><br>
<br>
<br>
<br>
_______________________________________________<br>
gradsusr mailing list<br>
<a href="mailto:gradsusr@gradsusr.org" target="_blank">gradsusr@gradsusr.org</a><br>
<a href="http://gradsusr.org/mailman/listinfo/gradsusr" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a><o:p></o:p></p>
</blockquote>
</div>
</div>
</div>
</body>
</html>