...
Generating the Makefiles with CMake
One nice and highly recommended feature of CMake is the ability to do out of source builds. In this way you can make all your ".o" files, various temporary depend files, and even the binary executables without cluttering up your source tree. To use out of source builds, first create a build directory, then change into your build directory and run cmake pointing it to the source directory.
After changing into the build directory, the user has to run cmake with his/her own options. The command gives feedback on what requirements are fulfilled and what software is still required. The following table gives an overview of the different options. The default (without any options) will compile a shared library only and install it in /usr/local/.
CMAKE_INSTALL_PREFIX | where you want to install your ecCodes | /usr/local |
CMAKE_BUILD_TYPE | to select the type of compilation:
| RelWithDebInfo |
ENABLE_NETCDF | For the grib to netcdf convert tool | AUTO |
ENABLE_JPG | Enable JPEG2000 support. This option should look for Jasper or OpenJPG | AUTO |
ENABLE_PNG | Enable PNG support for decoding/encoding | OFF |
ENABLE_PYTHON | Offers the Python interface to the package | AUTO |
ENABLE_FORTRAN | Offers the Fortran interface to the package | AUTO |
ENABLE_GRIB_THREADS | Enable POSIX threads | OFF |
cmake options | doc | default |
---|
The C and Fortran compilers are chosen by CMake. (This can be overridden by setting the environment variables CC and FC to the preferred compiler). Further the variables CMAKE_C_FLAGS or CMAKE_Fortran_FLAGS can be used to set compiler flags for optimisation or debugging.
One nice and highly recommended feature of CMake is the ability to do out of source builds. In this way you can make all your ".o" files, various temporary depend files, and even the binary executables without cluttering up your source tree. To use out of source builds, first create a build directory, then change into your build directory and run cmake pointing it to the source directory.
Quick installation guide
Here is an example of a list of commands you could use to install ecCodes. It is assumed “>” is the shell prompt. The version number may vary.
Code Block |
---|
> tar -xzf eccodes-1.0.0.tar.gz > mkdir build ; cd build > cmake ../eccodes-1.0.0 –DCMAKE_INSTALL_PREFIX=/path/to/where/you/install/eccodes ... > make > make test > make install |