Project

General

Profile

Problem with cygeccodes.dll for Cygwin install

Added by Zach Daniel almost 5 years ago

Hello,

I am trying to get CDO working on cygwin but I am having a problem with the cygeccodes.dll. I put both the cdo.exe and cygeccodes.dll in my cygwin bin folder, and I think I have downloaded all the required packages. However I am getting the following error when I try to convert a GRIB2 file to netcdf.

ECCODES ERROR   :  Unable to find boot.def. Context path=C:cygwin64bin

Possible causes:
- The software is not correctly installed
- The environment variable ECCODES_DEFINITION_PATH is defined but incorrect

ecCodes assertion failed: `0' in /home/cimduser/tar/eccodes-2.9.0-Source/src/grib_context.c:205
Aborted (core dumped)

It seems like it is trying to use ecCodes rather than cygeccodes but even changing the ECCODES_DEFINITION_PATH variable has not seemed to help.

Any help would be greatly appreciated,
Thanks


Replies (9)

RE: Problem with cygeccodes.dll for Cygwin install - Added by Ralf Mueller almost 5 years ago

Hi Zach!

sorry for the inconvenience - these GRIB pitfalls ...

the GRIB2 standard uses text files for holding the meta-data. That's why the installation of the binary version of the library (cygeccodes.dll) is not enough. yeah, no - I didn't add this in the documentation, my bad

you can solve this by

  1. download the 2.9.0 version of eccodes (https://confluence.ecmwf.int/download/attachments/45757960/eccodes-2.9.0-Source.tar.gz?api=v2)
  2. extract it so some directory and set the ECCODES_DEINITION_PATH variable to <yourpath>/eccodes-2.9.0-Source/definitions

then the CDO command should be able to find the eccodes definitions. Make sure you make that setting of ECCODES_DEFINITION_PATH persistent like adding it to your .bashrc or whatever shell you are using.

again sorry for the missing docu!
ralf

RE: Problem with cygeccodes.dll for Cygwin install - Added by Joseph S over 4 years ago

Hi Ralf,

I am experiencing the same issue as Zach described. I am able to run CDO successfully from Windows 7 through Cygwin (works great!), but I am unable to process grib files due to the eccodes error.

I followed your instructions, but I am still receiving the same error as Zach described.

On my Windows 7 system, the eccodes folder is located here:

C:\cygwin64\bin\eccodes-2.9.0-Source\definitions

I added the ECCODES_DEFINITION_PATH enviornmental path variable and set it equal to C:\cygwin64\bin\eccodes-2.9.0-Source\definitions (as shown in the attachment)

Next, I ran these commands in the Cygwin terminal:

computer@computer-PC ~
*$ cd /cygdrive/e/*qpf

computer@computer-PC /cygdrive/e/qpf
$ PATH="$PATH:.:"

computer@computer-PC /cygdrive/e/qpf
$ cdo sinfo p06m_2017080100f006.grb
ECCODES ERROR : Unable to find boot.def. Context path=C:\cygwin64\bin\eccodes-2.9.0-Source\definitions

Possible causes:
- The software is not correctly installed
- The environment variable ECCODES_DEFINITION_PATH is defined but incorrect

ecCodes assertion failed: `0' in /home/cimduser/tar/eccodes-2.9.0-Source/src/grib_context.c:205


I have verified that the boot.def file exists at the path (e.g., C:\cygwin64\bin\eccodes-2.9.0-Source\definitions)

I'll have my new Linux machine ready soon, but in the meantime, do you have any additional hints to resolve the eccodes issue in Windows?

Thanks kindly.

Cheers,
Joseph

path.png (7.82 KB) path.png

RE: Problem with cygeccodes.dll for Cygwin install - Added by Joseph S over 4 years ago

Correction:

$ cd /cygdrive/e/qpf

NOT

*$ cd /cygdrive/e/*qpf

RE: Problem with cygeccodes.dll for Cygwin install - Added by Ralf Mueller over 4 years ago

after setting the environment, did u open a new cmd promp?

RE: Problem with cygeccodes.dll for Cygwin install - Added by Joseph S over 4 years ago

Hi Ralf,

Thank you for responding. Yes, and I also rebooted. I also tried deleting the installation, and reinstalling it.

Neither of those procedures worked. I still received this error:

ECCODES ERROR : Unable to find boot.def. Context path=C:\cygwin64\bin\eccodes-2.9.0-Source\definitions

Possible causes:
- The software is not correctly installed
- The environment variable ECCODES_DEFINITION_PATH is defined but incorrect

ecCodes assertion failed: `0' in /home/cimduser/tar/eccodes-2.9.0-Source/src/grib_context.c:205

RE: Problem with cygeccodes.dll for Cygwin install - Added by Joseph S over 4 years ago

Greetings CDO support team:

The previous difficulties that I reported with ECCODES and GRIB files when using CDO via Cygwin on Windows 7 is resolved, because I no longer use it on Windows. :)

I'm running CDO from the terminal window on Linux Mint 19.1 Tessa, on a new AMD Ryzen 9 3900X with 12 cores and with 64 GB of memory. I finished building my new Linux science and math processing computer a few weeks ago, and I have used CDO extensively on it. I'm happy to report that CDO and ECCODEs works flawlessly on it, including the processing of GRIB and GRIB2 files. :)

Cheers,
Joseph

RE: Problem with cygeccodes.dll for Cygwin install - Added by Ralf Mueller over 4 years ago

jo Joseph!

thx for the info ... and happy CDOing ;-)

cheers
ralf

RE: Problem with cygeccodes.dll for Cygwin install - Added by Ameer Muhammad over 4 years ago

Hello,
I together with my IT expert tried a bunch of different things including re-installing the CDO with all necessary libraries but getting the same error as everyone else on this thread did. I am using windows based machine with Cygwin64 Terminal. Here is the error
@$ cdo -f nc copy PCP6NCEP.grib PCP.nc
ECCODES ERROR : Unable to find boot.def. Context path=C:\eccodes_source\definitions

Possible causes:
- The software is not correctly installed
- The environment variable ECCODES_DEFINITION_PATH is defined but incorrect

ecCodes assertion failed: `0' in /home/cimduser/tar/eccodes-2.9.0-Source/src/grib_context.c:205
Aborted (core dumped)@

We checked to see if the eccodes are placed correctly on the path- which turned out yes
$ echo $ECCODES_DEFINITION_PATH
C:\eccodes_source\definitions

Doubled check if we do have the boot.def- it seems all is fine
$ ls $ECCODES_DEFINITION_PATH
boot.def empty_template.def mars_param.table
budg extrules.am marsattrib_db2def.pl
bufr grib1 metar
cdf grib2 param_id.table
check_grib_defs.pl grib3 parameters_version.def
CMakeLists.txt gts publish_new_parameters.sh
common hdf5 stepUnits.table
compare_concepts.pl inject_download_page.pl taf
create_def.pl installDefinitions.sh tide
create_mars_struct.pl make_makefile_am.pl wrap
create_tables.pl Makefile.am
dummy.am mars

Don't know what else we shall do? Any help to tackle this one, please.
Thanks,
Ameer

RE: Problem with cygeccodes.dll for Cygwin install - Added by Ralf Mueller over 4 years ago

Hi Ameer!

I added a tar-file in the download-area: https://code.mpimet.mpg.de/attachments/20542/eccodes-share.tar.gz that can be used like this with cygwin:

  1. cd /usr/local
  2. mkdir -p share
  3. cd share
  4. tar xzf <path-to-downloaded-eccodes-share.tar.gz>
  5. cdo -g grb2 -chname,topo,orog -topo t.grb2
    (1-9/9)