...
...
...
...
...
...
...
...
...
width | 280px |
---|
...
bgColor | white |
---|---|
titleBGColor | lightlightgrey |
title | On this page |
...
...
...
...
...
...
language | bash |
---|---|
title | Steps to configure grib-api with CMake assuming gnu compilers |
...
...
...
As OpenIFS models do not deal with any image based GRIB data these options can be disabled, unless you have other GRIB data containing images that you need to work with.
...
...
Available options
To get additional help on the available options and build configuration run the command:
Code Block |
---|
cmake -LH eccodes-2.9.0-Source |
...
...
...
...
...
...
...
...
Possible problems
Info | ||
---|---|---|
| ||
OpenIFS support: openifs-support@ecmwf.int. |
Cray
Possible issues with the Cray systems (using cce or gnu compilers) are related to building shared libraries and linking with supporting netcdf and python libraries.
1. If problems occur, first try using the option "-DBUILD_SHARED_LIBS=OFF" to only build statically linked libraries.
2. If linking problems still occur, try unloading the Cray ATP module which has been known to cause problems.
Code Block |
---|
module unload atp |
3. -llibm link error.
If the following occurs:
Code Block | ||
---|---|---|
| ||
/usr/bin/ld: attempted static link of dynamic object `/usr/lib64/libm.so' |
set the environment variable CRAYPE_LINK_TYPE=dynamic (or add the compiler option '-dynamic').
4. Missing python library
If this error occurs when compiling _gribapi_swig.so:
Code Block |
---|
/usr/bin/ld: cannot find -lpython |
it means the directory path of the python library is not on the linkers list of directories to search.
Make sure the python module is loaded. Then check any PYTHON environment variables set by the module and confirm the location of the libpython (or other version) library.
Set the environment variable LIBRARY_PATH to the correct directory so that the linker can find it:
Code Block | ||
---|---|---|
| ||
export LIBRARY_PATH=/home/anaconda/2.2.0-python2/lib64 |
LIBRARY_PATH
is only used at compile/link time. It may also be necessary to add this directory to the LD_LIBRARY_PATH
environment variable which is searched for libraries at runtim
Building on High Performance Computer Systems
Some HPC batch systems have a different hardware architecture for their login (or frontend node) to the batch node, but the frontend compilation system is targeted at the batch nodes. This is known as cross-compilation. If this is the case you may see failures in the 'make check' stage because the checks, although compiled for the backend batch nodes, are being run on the frontend nodes and therefore may not work correctly. If this is the case on your system, we recommend using a batch job to do the 'cmake; make; make check; make install' steps.
Note if you plan on using the eccodes software in your own software that runs on the frontend nodes you may need to compile and install eccodes twice; one for the batch system and again for the frontend system.
If you have any questions installing eccodes in this type of environment, please contact: openifs-support@ecmwf.int for assistance.
Verify the installation
To verify that the installation was successful, first ensure that the eccodes bin directory is added to your PATH environment variable and then run the codes_info command e.g.
Code Block |
---|
% export PATH=$PATH:$HOME/ecmwf/eccodes/bin
% codes_info
ecCodes Version 2.8.0
Default definition files path is used: /home/myname/ecmwf/eccodes/share/eccodes/definitions
Definition files path can be changed setting ECCODES_DEFINITION_PATH environment variable
Default SAMPLES path is used: /home/myname/ecmwf/eccodes/share/eccodes/samples
SAMPLES path can be changed setting ECCODES_SAMPLES_PATH environment variable |
If the installation was successful, codes_info will report the installation directories. Any problems, please contact openifs-support@ecmwf.int.
HTML |
---|
<script type="text/javascript" src="https://software.ecmwf.int/issues/s/en_UKet2vtj/787/12/1.2.5/_/download/batch/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector/com.atlassian.jira.collector.plugin.jira-issue-collector-plugin:issuecollector.js?collectorId=047f74ec"></script>
|
...